在DatagridView我有数据绑定checkboxcolumns。但是,如果我选中或取消选中多个复选框,则不会保存所有更改。 (它不会触发所有的Set属性方法,也可能每隔2秒)。但是,如果我在每个复选框之后单击,则在下一个复选框之前单击另一个单元格(列),然后所有操作都将触发Set方法。所以看起来单元格验证不是基于每个单元格的,而是基于每列的(对于复选框列)。那么你如何解决这个问题呢?Datagridview复选框列验证
0
A
回答
3
0
这是不是真的很清楚你试过什么,什么是不行的。我假设你有一个Winform应用程序并使用SqlDataSource将SQL-Server表绑定到你的网格。数据库中有一个布尔(位)字段,因此网格会自动生成一个DataGridViewCheckBoxColumn。您试图保存用户单击保存按钮时所做的所有更改。
所有这些猜测都正确吗?
您所要做的就是使用dataadapter更新您的数据集/数据表。
Private Sub BtnSaveChanges_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSaveChanges.Click
Me.FooTableAdapter.Update(DataSet1.Foo)
End Sub
MSD-例:http://msdn.microsoft.com/en-use/library/fbk67b6z.aspx
如果变化应该直接保存到数据库中,您可以处理的BindingSource的CurrentItemChanged-event。
Private Sub FooBindingSource_CurrentItemChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles FooBindingSource.CurrentItemChanged
Dim thisDataRow As DataRow = DirectCast(DirectCast(sender, BindingSource).Current, DataRowView).Row
If thisDataRow.RowState = DataRowState.Modified Then
Me.FooTableAdapter.Update(thisDataRow)
End If
End Sub
相关问题
- 1. 复选框验证
- 2. 验证复选框
- 3. 复选框验证
- 4. 验证复选框
- 5. 复选框验证
- 6. 复选框验证
- 7. datagridview复选框列排序
- 8. Datagridview复选框列的值
- 9. datagridView中的复选框列
- 10. Datagridview和复选框列表
- 11. jQuery复选框验证alt复选框
- 12. 验证复选框选择
- 13. 复选框datagridview
- 14. PHP复选框阵列验证
- 15. 验证复选框或下拉列表
- 16. ASP.NET MVC复选框列表验证
- 17. Spring MVC的验证复选框列表
- 18. 复选框阵列验证笨
- 19. 验证对复选框和aspnet验证
- 20. jQuery验证插件复选框验证
- 21. jQuery验证插件:验证复选框
- 22. DataGridView复选框列“全选”性能
- 23. 验证复选框或单选框
- 24. 验证复选框角
- 25. 验证复选框与jquery.validate.unobtrusive
- 26. ModalPopUpExtender与复选框验证
- 27. javascript复选框验证
- 28. jQuery复选框验证
- 29. Javascript复选框验证
- 30. 验证html复选框
谢谢!我认为更多的细节是不相关的。但;我在一个datagridview中显示了一个实体类的对象(来自Linq-to-Sql的dbml文件)。所以这个属性是这个类中的布尔属性。我不自动生成列,但我用Columns.Add(DataGridViewCheckBoxColumn)指定。问题是,我在属性的Set方法上放置了一个断点(在dbml文件中),所以我注意到它何时被调用。问题是如果你在海誓山盟之后单击两个复选框。只有其中一个(第一个)的设置方法被调用,而在datagridview中可视化时,这两个操作都会导致复选标记。 – bretddog
对不起,我没有确认所有问题:这是一个Winforms应用程序,Sql Server Express数据源。在绑定导航器上有一个保存按钮,用于调用存储库以保存到数据库。但我相信这个问题并没有真正与sql /数据库问题有关。但简单地说,任何布尔属性由DataGridViewCheckBoxColumn更新的方式。 (至少看起来对我来说) – bretddog
有点清楚的描述:如果我有5个空的复选框,然后检查所有的复选框,并在最后一个命中保存按钮后。 “最后”复选框将不会保存为选中状态。然而,如果在最后一个复选框和保存按钮之间,我点击另一个单元格(其他列或复选框正方形以外的任何复选框单元格),那么这最后一个检查也将成为保存的一部分。所以问题在于在检查框时不调用该属性,而是在DataGridView的NEXT操作上调用该属性。但是,如果下一个操作在该控件的外部,则不会保存该检查。 – bretddog