DataGridView 데이터 삽입하기

1. Data를 한 줄 단위로 추가하기



DataGridView를 Form의 원하는 위치에 붙은 뒤에 다음과 같이 Row 단위로 데이터를 추가할 수


있다.


 




위와 같이 한 줄 단위로 추가 하기 위해서는 다음과 같이 Column을 추가 할 갯수에 맞춰



미리 생성해 두어야 한다.





column의 추가 방법은 다음과 같이 간단하게 할 수 있다.





DataGridView 우측 상단에 보면 작은 네모안에 화살표 모양 버튼이 있는데 그것을 눌러


(이것의 이름을 까먹음;;)



열추가를 눌러 Column이름과 머리글 텍스트를 입력한 후 추가를 누르면 된다.



머리글 텍스트는 GridView에 직접적으로 보일 제목이고 이름은 나중에 Colum의 이름과



Row의 인덱스로 DataGridView의 원하는 위치의 Cell의 Data를 가져오거나 변경 할 수 있으므로



Column의 이름도 나중에 알아볼 수 있도록 신경 써서 이름을 지정해 두자.

2. 동적으로 Column 생성 및 데이터 추가


 


위의 방법은 미리 Column을 생성 해 두고 그 개수에 맞게 데이터를 추가 한다는 점에서



불편하기도 하고 비효율 적 일 수도 있다.



이것을 프로그램이 실행 되는 동안에 동적으로 생성하여 추가 할 수 있는 방법도 있다.



먼저 Column을 코드로 생성하는 방법이다.





위와 같이 하면 1번에서 이름을 “Column0”, 머리글 텍스트를 “처방 이름”로 하여



열을 추가 한것과 같은 효과를 낼 수 있다.



위를 응용하여 다음과 같이 원하는 개수 만큼 Column을 추가 할 수 있다.





day가 1차원 배열일 때 day의 배열 크기 만큼 Column을 생성하는데,



이름 : Column1, 머리글 텍스트 : Day 1


이름 : Column2, 머리글 텍스트 : Day 2


이름 : Column3, 머리글 텍스트 : Day 2


                         .


                         .


                         .



위와 같은 식으로 코드를 이용해 동적으로 생성할 수 있다.

Column을 생성 하였으면 이제 코드를 이용해 데이터를 넣어 보자.





마치 2차원 배열에 데이터를 넣는것 과 같이 쉽게 원하는 위치에 데이터를 넣을 수 있다.



여기서 첫번째 String형 index는 Column을 생성 할 때 입력했던 이름 속성의 값이다.



하지만, DataGridView에 아무 데이터도 없을 때 데이터를 위와 같은 식으로 넣으면



첫 줄은 들어가지만 2번째 부터 Exception이 발생한다.



그 때는 dataGridView1.Rows.Add();로 빈 열을 하나 추가 한 후 넣으면 된다.



즉, DataGridView에 아무것도 없을 때 Column0에 10개의 데이터를 차례대로 추가하기 위해서는


다음과 같이 한다.



for (int i = 0; i < 10; i++)


{


     dataGridView1.Rows.Add();


     dataGridView1[“Column0”, i].Value = “안녕”;


}



데이터를 넣을 때 주의 해야 할 점은 2차원 배열은 arr[i, j]하게 되면 i행에 j열 이지만



DataGrideView는 반대라는 것이다.



 

Posted in C#

Comments

천창중에게 댓글 남기기 댓글 취소

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다