如何在DataGridView中选择新的DataTableRow

时间:2014-04-23 00:43:49

标签: vb.net datagridview datatable

我正在尝试在DataGridView中选择一个新添加的项目,该项目绑定到DataTable项目。我知道我们可以遍历DataGridView并找到它......

选择行(DataGridView循环)

Private Sub SelectNewDgvItem(ByVal Item As clsItem, ByVal Dgv As DataGridView)
    For each r as DataGridViewRow In Dgv.Rows
        If r.Cells("PK_Item").Value = Item.PK_Item Then
           r.Selected()

           'Ensures visibility of the row if r.Cells("PK_Item") is visible
           Dgv.CurrentCell = r.Cells("PK_Item") 
           Exit For
        End If
    Next
End Sub

我试图弄清楚我们是否可以使用DataTable选择DataGridView行

1 个答案:

答案 0 :(得分:1)

正确的方法是将DataTable绑定到BindingSource,然后将BindingSource绑定到DataGridView。然后,您可以调用Find的{​​{1}}方法来获取行的索引,该索引可能与原始BindingSource中相应行的索引匹配,也可能不匹配。然后,您可以使用该索引从网格的DataTable集合中获取DataGridViewRow和/或您可以将其分配到Rows的{​​{1}}属性UI中的当前行。这只是为什么在WinForms中绑定时通常应该使用Position的一个例子。