У меня есть приложение WinForms. Внутри DataGridView, я генерироваться столбец флажок динамически, используя следующий код:Как вызвать событие GridView_CellContentClick?
DataGridViewCheckBoxColumn myCheckedColumn = new DataGridViewCheckBoxColumn()
{
Name = "My column",
FalseValue = 0,
TrueValue = 1,
Visible = true
};
mydatagridview.Columns.Insert(0, myCheckedColumn);
При нажатии на флажок, я хочу, чтобы выполнить проверку достоверности, как только один флажок получает чек, а не несколько флажков.
Я попытался использовать событие mydatagridview_CellContentClick
, но я не смог вызвать это событие.
Я написал код события следующим образом:
private void mydatagridview_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
if ((sender as DataGridView).CurrentCell is DataGridViewCheckBoxCell)
{
if (Convert.ToBoolean(((sender as DataGridView).CurrentCell as DataGridViewCheckBoxCell).Value))
{
int currentcolumnclicked = e.ColumnIndex;
int currentrowclicked = e.RowIndex;
foreach (DataGridViewRow dr in associatinggridView.Rows)
{
dr.Cells[currentcolumnclicked].Value = false;
}
associatinggridView.CurrentRow.Cells[currentrowclicked].Value = true;
}
}
}
Вы подключили событие ??? (вставьте имя события 'mydatagridview_CellContentClick' в соответствующий слот на вкладке событий панели свойств DGV!) – TaW
не может воспроизвести. как заполняется DGV? – kennyzx
У вас нет дескриптора на вашем 'dgv_CellContentClick' ... Если вы не вручную установили его на загрузку формы? – Alex