赢表格。使用 BindingNavigator 时如何使 DataGridView 写入单元格值

Posted

技术标签:

【中文标题】赢表格。使用 BindingNavigator 时如何使 DataGridView 写入单元格值【英文标题】:WinForms. How to make DataGridView to write cell value when use BindingNavigator 【发布时间】:2016-10-21 15:08:28 【问题描述】:

我在 From 上有 WinForms DataGridView 和 BindingNavigator 绑定到同一个 BindingSource。

当用户在 DataGridView 的单元格中输入文本(单元格文本编辑器可见)并在 BindingNavigator 中按“移动下一个”时, 假设网格关闭单元格文本编辑器,文本应写入DataTable字段并记录结束编辑。

但网格只是忽略输入的文本,并将旧值返回到单元格中。

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

【问题讨论】:

请提供一些带有可重现示例的代码。 没有代码。所有这些都是在设计时在属性窗口中执行的。在 From DataGridView、BindingNavigator、BindingSource 上。 BindingSource 绑定到任何简单的 DataTable。 DataGridView 和 BindingNavigator 绑定到 BindingSource。 【参考方案1】:

这是可能的。您只需将BindingNavigator 类的CausesValidation 属性设置为true

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

this.bindingNavigator.CausesValidation = true;

【讨论】:

以上是关于赢表格。使用 BindingNavigator 时如何使 DataGridView 写入单元格值的主要内容,如果未能解决你的问题,请参考以下文章

WinForm之中BindingNavigator控件的使用

BindingNavigator控件

.NET Winforms BindingNavigator 添加和删除按钮不起作用

BindingNavigator操作DatagridView的数据

R语言gt包和gtExtras包优雅地漂亮地显示表格数据:gt_plt_winloss函数在表格中输出包含赢输值的列表(即,0=输,0.5=平局,1=赢),并输出一个内联图(inline plot)

计算赢/输连续查询