c# - 当以编程方式更改值时,不触发 DataGridView 中的单元格值更改事件

标签 c# .net events datagridview

我想知道当值以编程方式更改时,是否有办法不触发 DataGridView 中的 CellValueChanged 事件? 我只想在用户手动更改值时处理该事件,例如通过单击或键入其中一个框。在我的应用程序中,我还以编程方式设置值并且不想处理该事件。

谢谢, 瑞特什

最佳答案

向您的处理程序添加一个条件,以评估是否应使用该处理程序。当您以编程方式更改 CellValue 时,将该值设置为 true。

//set this to true when you want to skip handler
private bool _skipHandler = false;

void Handler(object sender, EventArgs e) {
   if (skipHandler)
   {
       skipHandler = false;
       return;
   }
   else
   {
       //handle accordingly
   }
}

关于c# - 当以编程方式更改值时,不触发 DataGridView 中的单元格值更改事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32239592/

相关文章:

c# - 将列表数组中的值绑定(bind)到列表框

c# - volatile IEnlistmentNotification 和 TransactionScope.AsyncFlowEnabled = true

c# - 在 C# 中编辑列表 <double[]> 的问题

c# - 为什么 C# 发布版本包含调试信息

javascript - 当焦点离开我的网页时如何暂停视频 (html5)

c# - 如何从 C# 中的 Azure HTTP 触发器函数删除 CosmosDB 中的项目

c# - 为了可测试性,向 ComboBox 添加功能的正确方法是什么?

c# - ASP.NET 主页是否应该从 View 中获取数据?

C# - move 时使表单半透明

jQuery 元素存在事件