CellContentClick事件并不总是工作
本文关键字:工作 事件 CellContentClick | 更新日期: 2023-09-27 17:50:47
CellContentClick
事件并不总是起作用-它有时起作用,有时不起作用,随机
我的代码如下,我使用断点检查,但程序有时进入块和,有时不。为什么会这样呢?
private void dataGridView1_CellContentClick_1(object sender, DataGridViewCellEventArgs e)
{
textBoxUserName.ReadOnly = true;
button2.Visible = true;
int index = e.RowIndex;
if (!(index < 0))
{
DataGridViewRow row = dataGridView1.Rows[index];
textBoxUserName.Text = row.Cells["UserNAme"].Value.ToString();
textBoxPassword.Text = row.Cells["Pass"].Value.ToString();
dataGridView1.Focus();
}
dataGridView1.Focus();
}
尝试使用CellClick事件:
当单击单元格的任何部分时发生。
当你点击单元格时,CellContentClick事件不一定会触发,用户必须点击单元格的"内容"区域,比如文本,例如:
单击单元格中的内容时发生。
尝试使用CellClick事件代替(如LarsTech所说)。
双击设计视图上的数据网格将把CellContentClick事件链接到一个方法,这意味着你需要确切地单击内容,而不是单元格。
假设我们有一个单元格名为"IsChecked"这是一个bool值,并显示为一个小复选框。点击右击复选框将触发CellContentClick,而其他任何地方都不会。
"else"地方;包括内容前后的空格、填充空格、行标头。
当使用CellClick代替时,我们需要检查行头是否被单击,从而生成e.RowIndex = -1。
if (e.RowIndex < 0 || e.RowIndex >= dataGridView.RowCount)