我通过DataGridView
将FileItem
绑定到FileItemBindingSource
个对象列表。我想简单地将网格绑定到我的列表,让用户选中或取消选中每个项目的复选框列,然后单击按钮,从网格中获取所有选中的项目。现在,如果我使用以下代码,即使在UI中检查了一些框,返回的对象都将Checked设置为false。
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
FileItemBindingSource.EndEdit()
Dim allFiles = DirectCast(FileItemBindingSource.DataSource, IEnumerable(Of FileItem))
Dim checkedFiles = allFiles.Where(Function(f) f.Checked).Select(Function(f) f.FilePath)
End Sub
我按如下方式绑定数据:
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
FileItemBindingSource.DataSource = GetFiles()
End Sub
我必须做什么才能在我的Checked专栏上进行修改?
答案 0 :(得分:0)
我认为你应该把Datagridview.beginInvoke();在拉动已检查的对象之前。
我也有这个问题。从未包含上次检查的行或始终包含最后一次未选中的行。然而,我无法访问该代码,我不是100%确定这是使用的命令。