WinForm/C# CellValueChanging 事件中 MessageBox 提示并改回旧值

xinggang · 2018年11月15日 · 151 次阅读

应用场景:

Grid 中有一打勾列(bit类型),用户在勾选时触发 CellValueChanging 事件,在此事件中做一些合法性校验,如果不通过则弹出 MessageBox 提示用户错误原因,并强制改回未打勾状态。

遇到的问题:

这时会发现将单元格的值改成false在弹出MessageBox的情况下是无效的,还是显示打勾状态。

解决方案:

调用 GridView 的 BeginUpdate() 和 EndUpdate() 方法。

示例代码:

https://git.weiku.co/ifu25/WinFormDemo/src/master/WinFormDemo/GridViewBeginUpdate.cs ^_^

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册