C# 在浏览桌面应用程序中的“数据网格视图”文本框列时,是否可以触发Tab键使用的任何事件
我有一个数据网格视图文本框列类型的网格视图 网格中有以下字段C# 在浏览桌面应用程序中的“数据网格视图”文本框列时,是否可以触发Tab键使用的任何事件,c#,gridview,desktop-application,setfocus,datagridviewtextboxcell,C#,Gridview,Desktop Application,Setfocus,Datagridviewtextboxcell,我有一个数据网格视图文本框列类型的网格视图 网格中有以下字段 Sr.No | Description | HSNCode | Qty | Rate | Amount Sr.编号和金额在程序中生成 我的问题是,当我使用tab键在网格中导航时,我想检查is“Qty”和“Rate”是否包含任何值 i、 e.如果用户输入描述,然后不输入“数量”和“费率”,则跳转到金额字段,在该字段中,我通过“数量*费率”生成值,但我想检查是否未输入“费率”或“数量”,然后我想转移对这两个字段的控制权 我找到了鼠标点击
Sr.No | Description | HSNCode | Qty | Rate | Amount
Sr.编号和金额在程序中生成
我的问题是,当我使用tab
键在网格中导航时,我想检查is“Qty”和“Rate”是否包含任何值
i、 e.如果用户输入描述,然后不输入“数量”和“费率”,则跳转到金额字段,在该字段中,我通过“数量*费率”生成值,但我想检查是否未输入“费率”或“数量”,然后我想转移对这两个字段的控制权
我找到了鼠标点击的解决方案,代码如下:
private void grdData_CellClick(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex == 5)
{
if (Convert.ToString(grdData.Rows[e.RowIndex].Cells[4].Value).Equals(""))
{
grdData.ClearSelection();
grdData.Rows[e.RowIndex].Cells[4].Selected = true;
}
}
}
当用户单击“金额”字段时,这非常有效,但如果我希望为选项卡键
使用相同的解决方案,该怎么办
我怎样才能找到解决方案?我应该将哪个事件用于网格
请帮助您可以尝试CellLeave/CellValidating事件。我对编码有点生疏,但我相信这对您来说是可行的。我将
单元格的代码单击()
放在CellLeave()和cellvalizing()
中,但不起作用。您不应该在这些方法中使用事件参数的行和列索引。只要调试一下,看看哪里不正确。