VB.NET 2008/VB - 데이터 그리드 뷰

데이터 그리드 뷰 개요

본클라쓰 2012. 9. 25. 17:32

 

데이터그리드뷰(DataGridView) 컨트롤은 데이터그리드(DataGrid) 컨트롤에 새로운 기능이 추가된 것으로, 이전 컨트롤을 대체합니다. 데이터그리드뷰 컨트롤을 사용하면 여러 종류의 데이터 소스에서 가져온 표 형식의 데이터를 표시하고 편집할 수 있습니다. 데이터를 데이터그리드뷰 컨트롤에 바인딩하는 작업이 많은 경우 데이터 소스(DataSource) 속성을 설정하는 작업과 마찬가지로 단순합니다. 여러 목록이나 표가 포함된 데이터 소스에 바인딩하는 경우에는 데이터 멤버(DataMember) 속성을 바인딩할 목록이나 표를 지정하는 문자열로 설정합니다.

 

데이터그리드뷰 컨트롤은 매우 다양하게 구성하고 확장할 수 있으며, 모양과 동작을 사용자 지정할 수 있는 여러 가지 속성, 메소드 및 이벤트를 제공합니다. 원도우 폼 응용 프로그램에서 표 형식의 데이터를 표시하려면 데이터그리드 등의 다른 컨트롤을 사용하기 전에 데이터그리드뷰 컨트롤을 먼저 사용하는 것이 좋습니다. 읽기 전용 값으로 채워진 작은 표를 표시하거나 수 백만 개의 레코드가 들어 있는 테이블을 사용자가 편집할 수 있도록 하려는 경우 데이터그리드뷰 컨트롤을 사용하면 프로그래밍하기 쉽고 메모리를 효율적으로 사용할 수 있습니다.

 

 

 

데이터그리드뷰의 기본 기능

 

1) 테이블을 세로로 스크롤할 때 계속 표시되는 열 머리글과 행 머리글을 자동으로 표시한다.

2) 현재 행에 대한 선택 영역 표시기가 포함된 행 머리글이 있다.

3) 사용자가 열 구분선을 두번 클릭하여 크기를 자동으로 조정할 수 있다.

4) 첫 번째 셀에 선택 영역 표시 직사각형이 있다.

5) 응용 프로그램의 Main 메서드에 EnableVisualStyles 메서드를 호출하는 경우 Windows XP와 Server 2003 제품군의 비주얼 스타일

   을 자동으로 지원한다.

 

 

데이터그리드뷰의 편집 기능

 

1) 사용자가 셀에서 두 번 클릭하거나 F2 키를 누르면 해당 셀이 자동으로 편집모드로 바껴서 사용자가 입력하는 대로 셀의 내용이

    업데이트 된다.

2) 사용자가 테이블 끝으로 스크롤하면 새 레코드가 추가하기 위한 행이 있음을 확인할 수 있다. 사용자가 이 행을 클릭하면 새 행이

    기본값으로 데이터그리드뷰에 추가된다. 사용자가 Esc 키를 누르면 새 행이 사라진다.

3) 사용자가 행 머리글을 클릭하면 전체 행이 선택된다.

 

 

바인딩된 데이터그리드뷰가 수행하는 작업

 

1) 자동으로 데이터소스의 열 이름을 열 머리글 텍스트로 사용한다.

2) 컨트롤이 데이터소스의 내용으로 채워진다.

3) 테이블에 표시되는 각 행의 대한 행을 만든다.

4) 사용자가 열 머리글을 클릭하면 내부 데이터를 기준으로 행을 자동으로 정렬한다.

 

이 때 바인딩할 수 있는 클래스 인스턴스는 다음과 같다.

 

1) 1차원 배열을 비롯한 IList 인터페이스를 구현하는 모든 클래스

2) DataTable 및 DataSet과 같은 IListSource 인터페이스를 구현하는 모든 클래스

3) BindingList 클래스와 같은 IBindingList 인터페이스를 구현하는 모든 클래스

4) BindingSource 클래스와 같은 IBindingListView 인터페이스를 구현하는 모든 클래스

 

데이터그리드뷰에 바인딩할 경우, 일반적으로 BindingSource 구성 요소에 바인딩한 다음 BindingSource 구성 요소를 다른 데이터소스에 바인딩하거나 비즈니스 개체로 구성 요소를 채웁니다. BindingSource 구성 요소는 다양한 데이터소스에 바인딩할 수 있고 많은 데이터 바인딩 문제를 자동으로 해결할 수 있기 때문에 데이터 소스로 많이 사용됩니다.