Vb.net 在datagridview中设置SELECTEDROWS列的值的最快方法是什么?
我用这行代码在selectedrows的所有第一列上加上“TRUE”:Vb.net 在datagridview中设置SELECTEDROWS列的值的最快方法是什么?,vb.net,vb.net-2010,Vb.net,Vb.net 2010,我用这行代码在selectedrows的所有第一列上加上“TRUE”: For Each row As DataGridViewRow In DataGridView1.SelectedRows row.Cells(0).Value = True Next 但是,如果行数超过100,则为该列添加单个值需要花费大量时间。row.Cells(0)是一个布尔列,我只需要将其设置为选中/未选中 我试着检查是否有语法可以设置列的值,但是从可用的语法和搜索引擎中找不到任何有用的东西。希望你能帮我
For Each row As DataGridViewRow In DataGridView1.SelectedRows
row.Cells(0).Value = True
Next
但是,如果行数超过100,则为该列添加单个值需要花费大量时间。row.Cells(0)是一个布尔列,我只需要将其设置为选中/未选中
我试着检查是否有语法可以设置列的值,但是从可用的语法和搜索引擎中找不到任何有用的东西。希望你能帮我做这个。提前感谢如果
DataGridView
是数据绑定的,您不应该直接修改单元格的内容。相反,您应该修改数据绑定对象。您可以通过DataGridViewRow
的DataBoundItem
访问该对象,例如c#:
请注意,绑定对象应实现INotifyPropertyChanged
,以便将更改反映在DataGridView
发现
vb.net:
Dim obj As MyObject = DirectCast(dataGridView.CurrentRow.DataBoundItem, MyObject)
obj.MyProperty = newValue
我在vb.net中询问…>。公平地说,我已经为您提供了vb.net。在我的电话里:没关系。。谢谢但我指的是选定的行。。不是当前行。。我是否应该再次使用相同的循环,但只修改bindingsource/databound对象中的值?
Dim obj As MyObject = DirectCast(dataGridView.CurrentRow.DataBoundItem, MyObject)
obj.MyProperty = newValue