DataGridView.SelectedRows Property


Gets the collection of rows selected by the user.

Namespace:   System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

Public ReadOnly Property SelectedRows As DataGridViewSelectedRowCollection

Property Value

Type: System.Windows.Forms.DataGridViewSelectedRowCollection

A DataGridViewSelectedRowCollection that contains the rows selected by the user.

The SelectionMode property must be set to FullRowSelect or RowHeaderSelect for the SelectedRows property to be populated with selected rows.

This property contains a read-only snapshot of the selection at the time it is referenced. If you hold onto a copy of this collection, it may differ from the actual, subsequent DataGridView state in which the user may have changed the selection. You should therefore not operate on a copy of the collection.

To programmatically select a row, set its Selectedproperty to true.

The following code example demonstrates how to use the SelectedRows property in the UserDeletingRow event. In this example, if the first row is contained in the SelectedRows collection, then the deletion is canceled. This example is part of a larger example available in the SelectionChanged event.

Private Sub UserDeletingRow(ByVal sender As Object, _
    ByVal e As DataGridViewRowCancelEventArgs) _
    Handles DataGridView1.UserDeletingRow

    Dim startingBalanceRow As DataGridViewRow = DataGridView1.Rows(0)

    ' Check if the starting balance row is included in the selected rows
    If DataGridView1.SelectedRows.Contains(startingBalanceRow) Then
        ' Do not allow the user to delete the Starting Balance row.
        MessageBox.Show("Cannot delete Starting Balance row!")

        ' Cancel the deletion if the Starting Balance row is included.
        e.Cancel = True
    End If
End Sub

.NET Framework
Available since 2.0
Return to top