2016-07-27 34 views
1

如何激發Click事件DataGridViewImageColumn當我按時輸入。目前當我按輸入DataGridViewImageColumn它移動到下一個單元格。DataGridView ImageColumn處理「Enter」鍵執行單擊

enter image description here

請幫忙。

+0

你的意思是所有的圖像...添加編輯.....或只是選擇行,然後移動到另一個圖像? –

+0

點擊添加圖片(鍵盤輸入鍵),它應該像鼠標點擊一樣。 –

回答

1

你可以把你想要運行的代碼放在CellContentClick的方法中,然後在CellContentClickKeyDown上調用該方法。

private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e) 
{ 
    if (e.RowIndex >= 0 && e.ColumnIndex== 3) 
     DoSomething(e.RowIndex, e.ColumnIndex); 
} 

public void DoSomething(int row, int column) 
{ 
    MessageBox.Show(string.Format("Cell({0},{1}) Clicked", row, column)); 
} 

private void dataGridView1_KeyDown(object sender, KeyEventArgs e) 
{ 
    var cell = this.dataGridView1.CurrentCell; 
    if (cell != null && e.KeyCode == Keys.Enter && 
     cell.RowIndex >= 0 && cell.ColumnIndex == 3) 
    { 
     DoSomething(cell.RowIndex, cell.ColumnIndex); 
     e.Handled = true; 
    } 
} 
+0

工作。謝謝 –

+0

注意'e.ColumnIndex == 3'是檢查索引3處是否在點擊列。 –

+0

是的,我知道了:) –