窗体。使用 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;
我将 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;