赢表格。使用 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控件的使用
.NET Winforms BindingNavigator 添加和删除按钮不起作用
BindingNavigator操作DatagridView的数据
R语言gt包和gtExtras包优雅地漂亮地显示表格数据:gt_plt_winloss函数在表格中输出包含赢输值的列表(即,0=输,0.5=平局,1=赢),并输出一个内联图(inline plot)