【问题标题】:DataGridView ImageColumn Handle "Enter" key to perform ClickDataGridView ImageColumn 处理“Enter”键执行单击
【发布时间】:2016-07-27 09:52:46
【问题描述】:

当我按下 Enter 时,如何触发 DataGridViewImageColumnClick 事件。目前,当我按下DataGridViewImageColumn 上的 Enter 键时,它会移动到下一个单元格。

请帮忙。

【问题讨论】:

  • 你的意思是所有的图片...添加编辑.....或者只选择行,然后移动到另一个图片?
  • 在 Add Image click (Key board Enter Key) ,它应该表现得像鼠标点击一样。

标签: c# winforms datagridview datagridviewimagecolumn


【解决方案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;
    }
}

【讨论】:

  • 注意e.ColumnIndex== 3是检查是否点击了索引3的列。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-01-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多