2014-09-11 3 views
0

첫 번째 열이 checkBox 인 dataGridView가 있습니다.dataGridView CheckBox가 작동하지 않음을 확인했습니다.

이 체크 박스에서 checked 이벤트를 사용하려고합니다.

내 코드입니다 :

dataGridView1.EditingControlShowing += (sender, e) => 
      {               


       if (dataGridView1.CurrentCell.ColumnIndex == 0) 
       { 

        CheckBox cb = (CheckBox)e.Control; 
        cb.CheckedChanged += (s, e1) => 
         { 
          dosomething(); 
         }; 
        } 
       }; 

하지만 난 첫 번째 열에서 확인란을 변경할 때 그것은 결코 checkedChanged 이벤트로 간다.

당신은 대신 CellContentClick 이벤트에 이벤트를 변경하고 그것은 당신의 체크 박스 컬럼의 경우 다음 확인할 수 있습니다

답변

1

:

private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e) 
{ 
    if (dataGridView1.Columns[e.ColumnIndex] is DataGridViewCheckBoxColumn) 
    { 
     DataGridViewCheckBoxCell cbCell = (DataGridViewCheckBoxCell)dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex]; 

     if (cbCell.Value == cbCell.TrueValue) 
     { 
      cbCell.Value = cbCell.FalseValue; 
     } 
     else 
     { 
      cbCell.Value = cbCell.TrueValue; 
     } 
     } 
} 
관련 문제