Vb.net 如何以编程方式在datagridview中真正选择一行,而不仅仅是高亮显示

Vb.net 如何以编程方式在datagridview中真正选择一行,而不仅仅是高亮显示,vb.net,datagridview,row,selection,highlight,Vb.net,Datagridview,Row,Selection,Highlight,我有此代码来选择DataGridView(通过单击按钮)的每一行,但相关控件不显示网格中的任何数据,只有在我手动单击行时才会更改,此代码仅高亮显示后续行,但不真正选择,选择标记保留在第一行: DataGridView设置: 多选=假 此代码的另一个问题是:高亮显示仅在可见行之前有效。如果没有可见行,则不要突出显示。是!这就是问题所在,现在起作用了,解决方法是: i=0到_2018DataGridView.Rows.Count-1的 _2018DataGridView.CurrentCell=\

我有此代码来选择
DataGridView
(通过单击按钮)的每一行,但相关控件不显示网格中的任何数据,只有在我手动单击行时才会更改,此代码仅高亮显示后续行,但不真正选择,选择标记保留在第一行:

DataGridView
设置: 多选=假


此代码的另一个问题是:高亮显示仅在可见行之前有效。如果没有可见行,则不要突出显示。

是!这就是问题所在,现在起作用了,解决方法是:

i=0到_2018DataGridView.Rows.Count-1的

_2018DataGridView.CurrentCell=\u 2018DataGridView.Item(0,i)

选择突出显示。如果你想要别的东西,那么它不是选择你想要的。听起来您想要的是将特定行设置为当前行,即包含插入符号的行。为此,将该行中的一个单元格指定给网格的
CurrentCell
属性。
 Dim i as integer = 0
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

    If i > DataGridView.SelectedCells.Count - 1 Then
    Else
        _2018DataGridView.Rows(i).Selected = True
    End If
    i += 1
End Sub