위 그림을 보면 선택된 Row에는 모두 CheckBox에 Check가 되어 있습니다.
그리고 선택을 하지 않는 부분은 Check가 되질 않습니다.
이렇게 마우스로 Row를 선택하였을 경우에만 Check가 되도록 하기 위해
구현을 해 보았습니다.
먼저 DataGridView의 이벤트에서 CellClick 이벤트를 활성화 시켜야 됩니다.
private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e) { int intchange; try { if (dataGridView1.CurrentCell != null) { // 모든 행의 CheckBox값을 False로 설정 for (int i = 0; i < dataGridView1.RowCount; i++) { dataGridView1[6, i].Value = false; // 6은 CheckBox가 있는 열 번호 } // 현재 선택된 행의 CheckBox값을 True로 설정 for (int i = 0; i < dataGridView1.SelectedRows.Count; i++) { //Convert.ToInt32 => string을 int로 변환 intchange = Convert.ToInt32(dataGridView1.SelectedRows[i].Cells[0].Value.ToString()); dataGridView1[6, intchange].Value = true; } } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
'C# Language' 카테고리의 다른 글
실행할 프로그램이 process에 있는지 확인하기 (0) | 2012.01.06 |
---|---|
DataGridView에서 ComboBox, CheckBox, Button 추가 하기 (0) | 2012.01.04 |