2014-10-31 88 views
0

我有一個WinForms應用程序。裏面一個DataGridView,我已經產生了複選框列動態使用下面的代碼:如何觸發GridView_CellContentClick事件?

DataGridViewCheckBoxColumn myCheckedColumn = new DataGridViewCheckBoxColumn() 
    { 
     Name = "My column", 
     FalseValue = 0, 
     TrueValue = 1, 
     Visible = true 
    }; 

mydatagridview.Columns.Insert(0, myCheckedColumn); 

當我點擊複選框,我想執行,因爲只有一個複選框選中得到,而不是多個複選框驗證檢查。

我試圖使用事件mydatagridview_CellContentClick但我無法觸發此事件。

我寫像這樣的事件代碼:

private void mydatagridview_CellContentClick(object sender, DataGridViewCellEventArgs e) 
{ 
    if ((sender as DataGridView).CurrentCell is DataGridViewCheckBoxCell) 
    { 
     if (Convert.ToBoolean(((sender as DataGridView).CurrentCell as DataGridViewCheckBoxCell).Value)) 
     { 
      int currentcolumnclicked = e.ColumnIndex; 
      int currentrowclicked = e.RowIndex; 

      foreach (DataGridViewRow dr in associatinggridView.Rows) 
      { 
       dr.Cells[currentcolumnclicked].Value = false; 
      } 

      associatinggridView.CurrentRow.Cells[currentrowclicked].Value = true; 
     } 
    } 
} 
+1

你有沒有聯繫到事件? (將事件名稱「mydatagridview_CellContentClick」粘貼到DGV屬性面板事件選項卡中的適當位置!) – TaW 2014-10-31 09:18:29

+0

不能重現。 DGV如何填充? – kennyzx 2014-10-31 09:28:08

+0

你沒有處理你的'dgv_CellContentClick' ...除非你手動設置它在表單加載? – Alex 2014-10-31 11:32:26

回答