Hola a todos,
Estoy algo emocionado porque, si bien es cierto que gracias a vosotros he conseguido seguir a delante con mis estudios de C# y .NET, es la primera vez que activo un tema.
Estoy realmente atascado en un DataGridView al cual le he insertado una
DataGridViewCheckBoxColumn. Mi problema es que no se como averiguar cuando el CheckBox de una fila del DataGridView esta Checked o no Checked cuando hago click sobre la celda activa.
He leído por internet varias formas y he creado este código en función a las diversas respuestas que he ido encontrando pero nada... Incapad. Este es mi código:
Inserción de la columna:
DataGridViewCheckBoxColumn dgvcbcSeleccionar = new DataGridViewCheckBoxColumn();
dgvcbcSeleccionar.HeaderText = "";
dgvcbcSeleccionar.Name = "RegSelect";
dgvListado.Columns.Insert(1, dgvcbcSeleccionar);
Eventos que utilizo cuando pulso sobre la fila del DataGridView:
private void dgvListado_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
if (dgvListado.Columns[e.ColumnIndex].Name == "RegSelect")
{
DataGridViewRow row = dgvListado.Rows[e.RowIndex];
DataGridViewCheckBoxCell cellSelecion = row.Cells["RegSelect"] as DataGridViewCheckBoxCell;
if (Convert.ToBoolean(cellSelecion.Value))
{
MessageBox.Show("True");
}
else
{
MessageBox.Show("False");
}
}
}
void dgvListado_CurrentCellDirtyStateChanged(object sender, EventArgs e)
{
if (dgvListado.IsCurrentCellDirty)
{
dgvListado.CommitEdit(DataGridViewDataErrorContext s.Commit);
}
}
El MessageBox siempre me muestra "False".
Llevo como 4 días dándole vueltas a esto y sin resultado alguno. Por favor, algún alma caritativa que me lleve por el buen camino de los
DataGridViewCheckBoxColumn.
Agradezco que me atendais, esto es la desesperación personificada pero, seguro, no será la última.
Muchas gracias a todos. Espero poder seguir a delante con vuestra ayuda...
Salu2.