2013-06-18 24 views
5

Sto cercando di ottenere gli indici di riga in base alle celle selezionate su un DataGridView. Come posso farlo in VB.NET?Ottenere RowIndex in base alle celle selezionate su un DataGridView

Questo è quello che ho:

Dim iRowIndex As Integer 
For i = 0 To Me.grdTransaction.SelectedCells.Item(iRowIndex) 
    iRowIndex = Me.grdTransaction.SelectedCells.Item(i).RowIndex.ToString() 
    Dim s As String = Me.grdTransaction.SelectedRows(i).Cells("DataGridViewTextBoxColumn6").Value 
    aList.Add(s) 

    MsgBox("Row index " & iRowIndex) 
Next 

risposta

8

Grazie a @matzone ho capito:

Dim iRowIndex As Integer 

    For i As Integer = 0 To Me.grdTransaction.SelectedCells.Count - 1 
    iRowIndex = Me.grdTransaction.SelectedCells.Item(i).RowIndex 
    aList.Add(Me.grdTransaction.Rows(iRowIndex).Cells("DataGridViewTextBoxColumn6").Value) 
    MsgBox("Row index " & Format(iRowIndex)) 
    Next 
0

Si può provare questo ..

Dim iRowIndex As Integer 
Dim s As String 

For i as Integer = 0 To Me.grdTransaction.SelectedCells.Count -1 

    iRowIndex = Me.grdTransaction.SelectedCells.Item(i).RowIndex.ToString() 
    aList.Add(Me.grdTransaction.SelectedRows(i).Cells("DataGridViewTextBoxColumn6").Value) 

    MsgBox("Row index " & format(iRowIndex)) 
Next 
+0

Grazie per il via. Sto ottenendo ArgumentsOutofRange Exception – alwaysVBNET

+0

@nectarines .. argh .. Ho dimenticato di eliminarlo .. – matzone

3

Non credo che sto capire la domanda. Perché

iRowIndex = grdTransaction.SelectedRow.RowIndex 

non funziona?

+0

Perché sto selezionando le celle, non le righe – alwaysVBNET

+0

Perdonami perché non ho mai creato un GridView in cui l'utente potesse selezionare singole celle, ma sicuramente anche se viene selezionata una cella specifica, la proprietà SelectedRow.RowIndex (o meglio ancora, la proprietà SelectedRow) è ancora l'indice della riga in cui si trova la cella selezionata? –

+0

sì, lo è sicuramente – alwaysVBNET

4

DGV.CurrentRow.Index

Lavoreranno anche se selectionMode = CellSelect

Problemi correlati