是否有可能只让用户选择触发DataGridView上的SelectionChanged事件?

本文关键字:上的 DataGridView SelectionChanged 事件 有可能 用户 选择 是否 | 更新日期: 2023-09-27 18:07:35

当程序更改选择时触发SelectionChanged方法。例如,调用dataGridView.ClearSelection()dataGridView.Rows[0].Selected = true将调用

方法
private void dataGridView_SelectionChanged(object sender, EventArgs e)
{
}

是否可能仅在用户改变选择时才执行代码,例如通过使用鼠标或键盘选择行/单元格?

是否有可能只让用户选择触发DataGridView上的SelectionChanged事件?

您必须在

中编写此代码
private bool _programmaticChange;
private void SomeMethod()
{
    _programmaticChange = true;
    dataGridView.ClearSelection();
    _programmaticChange = false;
}

private void dataGridView_SelectionChanged(object sender, EventArgs e)
{
    if (_programmaticChange) return;
    // some code
}

这将使它只运行在用户操作