본 자료는
1. DataGrid 기본 설명
2. DataGrid 관련 메서드
3. 예제 프로그램 동작 설명
순서로 진행합니다.
본 예제는 IEC-Series에서 C#, VB.NET을 사용하여 DataGrid를 작성하는 예제입니다. DataGrid란 화면에서 엑셀 형식으로 데이터 출력을 지원하며 이를 통해 사용자가 손쉽게 데이터를 추가/삭제/삽입/변경이 가능합니다.
1. DataGrid 기본 설명
아래는 DataGrid에서 사용하는 용어를 알기 쉽게 설명한 이미지입니다.
아래 표는 DataGrid에서 데이터를 처리하는데 필요한 작업 순서를 설명합니다. 상호 포함 관계는 DataGrid > DataSet > DataTable 입니다.
-
[STEP-1] DataGrid의 데이터를 처리하기 위한 데이터 객체(DataSet, DataTable)선언
[STEP-2] DataGrid의 Column Header 항목을 설정
테이블(DataTable)에 컬럼 헤더(Column Header)를 추가
상단의 표에서 No, Name, Address 부분임
[STEP-3] DataSet 객체에 테이블(DataTable)을 추가
[STEP-4] DataGridTableStyle의 객체를 생성하고 해당 스타일을 지정
GridColumnStyles.Add(스타일)로 스타일을 추가
[STEP-5] DataGrid에 속성 설정 (TableStyle, HeaderBackColor, HeaderForeColor)
[STEP-6] DataGrid에 DataSet의 0번째 테이블을 바인딩
[STEP-7] Row 데이터의 추가/삭제 /삽입/변경을 지원
2. DataGrid 관련 메서드
여기 소개되는 메서드는 본 예제에서 사용되는 메서드 위주로 설명하며 더 많은 메서드는 Microsoft의 MSDN을 참고하시기 바랍니다.
DataSet 관련 메서드 데이터 셋에 테이블을 추가합니다. public void Add(DataTable table) |
---|
(인자) table : 추가할 테이블 객체 |
DataTable 관련 메서드
지정된 데이터 컬럼 개체를 만들어 데이터 컬럼 컬렉션에 추가합니다. public void Add(DataColumn column) |
---|
(인자) column : 추가할 데이터 컬럼 |
테이블과 동일한 스키마를 갖는 새 DataRow를 만듭니다. DataRow를 만든 후 DataTable 개체의 Rows 속성을 통해 DataRowCollection에 추가할 수 있습니다. public DataRow NewRow() |
---|
(인자) 없음 (반환값) DataTable과 동일한 스키마를 갖는 DataRow를 반환합니다. |
컬렉션의 지정 위치에 새 행을 삽입합니다. public void InsertAt(DataRow row, int pos); |
---|
(인자) row : 추가할 DataRow (인자) pos : DataRow를 추가하려는 컬렉션의(0부터 시작하는) 위치 |
테이블의 특정 Index의 행을 삭제하는데 사용 public void Delete(); |
---|
DataColumn 관련 메서드
지정된 이름, 데이터 형식, 식 및 열이 특성인지 여부를 결정하는 값을 사용하여 DataColumn 클래스의 새 인스턴스를 초기화합니다. public DataColumn(string columnName, Type dataType, string expr) |
---|
(인자) columnName : 만들 열의 이름을 나타내는 문자열 (인자) dataType : 지원되는 타입 (인자) expr : 열을 만드는 식 |
DataGridTableStyle 관련 메서드
컬렉션에 컬럼 스타일을 추가 public int Add(DataGridColumnStyle column) |
---|
(인자) column : 추가할 데이터 컬럼 (반환값) : 새로운 DataGridColumnStyle의 인덱스 |
3. 예제 프로그램 동작 설명
-
초기 화면 또는 적용 후 화면 ① 제일 아래 Row에 신규 행(Row)추가
② 선택된 셀의 Row(행)삭제
③ 선택된 셀의 위의 행에 신규 행(Row) 추가
④ 선택된 셀의 행의 내용을 변경 -
항목 추가/삭제/삽입/변경 "A" 텍스트 상자(TextBox)를 클릭 시 상단의 SmartKeyboard가 팝업됩니다.
① Name, Addr, Phone에 내용을 수정하고 항목 추가 버튼을 클릭하면 내용이 변경됨
② 수정 전 상태로 복귀