【发布时间】:2015-07-24 09:13:05
【问题描述】:
我(我是 C# 方面的新手)遇到了一个我自己尝试解决但找不到解决方案的问题。
给定: 我有一个 10 列和 x 行的 Datagridview。 (列标题从1到10)
我的问题: 我只需要在单元格中写入“1”、“0”或“=”,但是为了在使用 Numpad 时加快填充速度,我想在按下 2 时自动将“=”写入当前选定的单元格小键盘。
我当前的解决方案(不起作用):
private void dataGridView1_KeyPress(object sender, KeyPressEventArgs e)
{
if(e.KeyChar == '2'||e.KeyChar.ToString() == "2")
{
dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[dataGridView1.CurrentCell.ColumnIndex].Value = "=";
}
}
我已经用 cellLeave 和 cellstatchanged 尝试过,但它不起作用。
【问题讨论】:
-
什么不起作用?按键没有被捕获吗?您无法获得正确的单元格吗?值是否未输入到单元格中。此外,DataGridView 类有一个 CurrentCell 属性。
标签: c# winforms datagridview key numpad