窗体。使用 BindingNavigator 时如何使 DataGridView 写入单元格值

WinForms. How to make DataGridView to write cell value when use BindingNavigator

我将 From 上的 WinForms DataGridView 和 BindingNavigator 绑定到同一个 BindingSource。

当用户在 DataGridView 的单元格中输入文本(单元格文本编辑器可见)并在 BindingNavigator 中按 "Move next" 时, 假定网格关闭单元格文本编辑器,文本应写入DataTable Field并记录结束编辑。

但网格会忽略输入的文本,并且 returns 将旧值输入到单元格中。

是否可以让网格在通过 BindingNavigator 导航时写入输入的值?

这是可能的。您只需将 CausesValidation property of the BindingNavigator class 设置为 true

请注意,此 属性 默认为 false,并且也被 BindingNavigator 基数 class ToolStrip 隐藏,因此您不能在设计时间(属性 的文档也具有误导性)。但是你可以通过代码来做到这一点(例如,在你的表单 Load 事件中):

this.bindingNavigator.CausesValidation = true;