You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VS2022中DataGridViewRowEventArgs无Cancel属性,无法取消行删除事件?

解决DataGridView取消行删除的问题

你用错了事件类型:

  • UserDeleteRow 事件是行删除完成后才触发的,它的参数DataGridViewRowEventArgs确实没有Cancel属性——因为此时删除操作已经结束,根本没法取消。
  • 要实现取消行删除的需求,得绑定**UserDeletingRow事件**,这个事件是在行删除操作执行前触发的,它的参数是DataGridViewRowCancelEventArgs,自带Cancel属性,设置为true就能直接取消删除。

正确的代码示例:

private void dataGridView1_UserDeletingRow(object sender, DataGridViewRowCancelEventArgs e)
{
    // 填入你的判断条件
    if (/* 触发取消的条件 */)
    {
        e.Cancel = true; // 取消删除操作
    }
}

补充说明:

  • 如果是在VS设计器里绑定事件,要在DataGridView的事件列表里找UserDeletingRow,别再选UserDeleteRow了。
  • 两个事件的核心区别就是触发时机:UserDeletingRow是删除前的拦截节点,UserDeleteRow只是删除完成后的通知节点,按需选择就行。

内容的提问来源于stack exchange,提问作者Felix

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 18:04:55