Respuestas:
Existe la RowIndex
propiedad de la CurrentCell
propiedad de DataGridView.
datagridview.CurrentCell.RowIndex
Maneje el SelectionChanged
evento y busque el índice de la fila seleccionada como arriba.
CurrentCell
devuelve la celda "activa", que es diferente de "Seleccionado". Incluso si hay varias filas seleccionadas, la celda activa puede estar en otro lugar y solo puede haber una celda activa
Utilice la propiedad Index en la colección SelectedRows de su DGV:
int index = yourDGV.SelectedRows[0].Index;
if
dataGridView1.SelectedRows[0].Index;
O si desea usar LINQ y obtener el índice de todas las filas seleccionadas, puede hacer:
dataGridView1.SelectedRows.Select(r => r.Index);
dataGridView1.SelectedRows[0].Index;
Aquí encontrará todo sobre datagridview C # tutorial de datagridview
Lynda
prueba esto
bool flag = dg1.CurrentRow.Selected;
if(flag)
{
/// datagridview row is selected in datagridview rowselect selection mode
}
else
{
/// no row is selected or last empty row is selected
}
Modifiqué la respuesta de @JayRiggs y esto funciona. Necesita if
porque a veces las SelectedRows pueden estar vacías, por lo que la operación de índice arrojará una excepción.
if (yourDGV.SelectedRows.Count>0){
int index = yourDGV.SelectedRows[0].Index;
}
Pruebe DataGridView.CurrentCellAddress .
Devuelve: un punto que representa los índices de fila y columna de la celda actualmente activa.
Por ejemplo, seleccione la primera columna y la quinta fila, y volverá: Punto (X = 1, Y = 5)
DataGridView.CurrentCellAddress.Y
... :)
Intentalo:
int rc=dgvDataRc.CurrentCell.RowIndex;** //for find the row index number
MessageBox.Show("Current Row Index is = " + rc.ToString());
Espero que te ayude.
datagridview.CurrentCell.RowIndex
. Mis disculpas, voy a recomendar que esta publicación se elimine como un duplicado completo.
Usé si se hace clic en obtener el valor de la fila:
private void dataGridView_Product_CellClick(object sender, DataGridViewCellEventArgs e){
int rowIndex;
//rowIndex = e.RowIndex; //Option 1
//rowIndex= dataGridView_Product.CurrentCell.RowIndex; //Option 2
rowIndex = dataGridView_Product.CurrentRow.Index; //Option 3
}