tomar - seleccionar una celda de un datagridview c#
DataGridView: enfoca una celda especĂfica (9)
¿Cómo establecer el foco en cualquier celda especificada en DataGridView? Esperaba una forma simple como Focus (rowindex, columnindex) pero no es tan fácil.
el problema con datagridview es que selecciona la primera fila automáticamente, por lo que desea borrar la selección
grvPackingList.ClearSelection();
dataGridView1.Rows[rowindex].Cells[columnindex].Selected = true;
De lo contrario, no funcionará
puede establecer el Focus
en una Cell
específica estableciendo la propiedad Selected
en verdadero
dataGridView1.Rows[rowindex].Cells[columnindex].Selected = true;
para evitar la selección múltiple acaba de establecer
dataGridView1.MultiSelect = false;
private void dataGridView1_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
{
int row = e.RowIndex;
int col = e.ColumnIndex;
if (row < 0 || col != 3)
return;
if (e.FormattedValue.ToString().Equals(String.Empty))
{
}
else
{
double quantity = 0;
try
{
quantity = Convert.ToDouble(e.FormattedValue.ToString());
if (quantity == 0)
{
MessageBox.Show("The quantity can not be Zero", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
e.Cancel = true;
return;
}
}
catch
{
MessageBox.Show("The quantity should be decimal value.", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
e.Cancel = true;
return;
}
}
}
Establezca la celda actual como:
DataGridView1.CurrentCell = DataGridView1.Rows[rowindex].Cells[columnindex]
o
DataGridView1.CurrentCell = DataGridView1.Item("ColumnName", 5)
y puedes enfocarte directamente con la Edición de:
dataGridView1.BeginEdit(true)
DataGridView1.CurrentCell = DataGridView1.Item ("ColumnName", 5)
public void M(){
dataGridView1.CurrentCell = dataGridView1.Rows[0].Cells[0];
dataGridView1.CurrentCell.Selected = true;
dataGridView1.BeginEdit(true);
}
en el evento form_load (object sender, EventArgs e) intente esto
dataGridView1.CurrentCell = dataGridView1.Rows [dataGridView1.Rows.Count1] .Cells [0];
este código hace foco en la última fila y la primera celda
Just Simple Paste And Pass Gridcolor () donde quieras.
Private Sub Gridcolor()
With Me.GridListAll
.SelectionMode = DataGridViewSelectionMode.FullRowSelect
.MultiSelect = False
''.DefaultCellStyle.SelectionBackColor = Color.MediumOrchid
End With
End Sub
Tuve un problema similar. He ocultado algunas columnas y luego intenté seleccionar la primera fila. Esto realmente no funcionó:
datagridview1.Rows[0].Selected = true;
Así que intenté seleccionar la cell[0,0]
, pero tampoco funcionó porque esta celda no se mostró. Ahora mi solución final está funcionando muy bien:
datagridview1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
datagridview1.CurrentCell = datagridview1.FirstDisplayedCell;
Entonces esto selecciona la primera fila completa.