У меня есть Datagridview, в котором есть столбец флажка. Я хочу установить флажок конкретной ячейки. Я использовал приведенный ниже код в загрузке формы после привязки сетки.
Но это не работает.
Я привязываю сетку, используя цикл for.
DataGridViewCheckBoxColumn dgvc = new DataGridViewCheckBoxColumn();
dgvc.Name = "colCheck";
dgvc.Width = 50;
dgvc.DefaultCellStyle.BackColor = Color.Lavender;
dgvOption.Columns.Add(dgvc);
WebBrowserColumn wbc = new WebBrowserColumn();
wbc.Name = "colOptionText";
//wbc.Width = 500;
wbc.ReadOnly = true;
wbc.DefaultCellStyle.BackColor = Color.Lavender;
dgvOption.Columns.Add(wbc);
dgvOption.Columns.Add("colCorrect", "Correct");
dgvOption.Columns["colCorrect"].Visible = false;
dgvOption.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.None;
dgvOption.AllowUserToResizeRows = false;
dgvOption.AllowUserToResizeColumns = false;
dgvOption.CellBorderStyle = DataGridViewCellBorderStyle.None;
dgvOption.ClearSelection();
int i = 0;
foreach (DataRow dtRow in dtOption.Rows)
{
dgvOption.Rows.Add();
dgvOption.Rows[i].Cells["colOptionText"].Value = dtRow["Options"].ToString();
dgvOption.Rows[i].Cells["colCorrect"].Value = dtRow["Correct"].ToString();
i += 1;
}
if(Answer !="")
{
dgvOption.Rows[2].Cells["colCheck"].Value = true;
}
private void dgvOption_SelectionChanged(object sender, EventArgs e)
{
dgvOption.ClearSelection();
}
private void dgvOption_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex == 0)
{
foreach (DataGridViewRow dgvRow in dgvOption.Rows)
{
dgvRow.Cells["colCheck"].Value = false;
}
dgvOption.CurrentCell.Value = true;
}
}