Мне нужно, чтобы конечный пользователь отмечал несколько флажков в datagridview моего приложения C # одновременно, используя событие checkbox_checkChanged, когда они использовали мышь, чтобы сначала выделить нужные ячейки.
Таким образом, в основном конечный пользователь будет использовать свою мышь, чтобы выделить ячейки в сетке данных, а затем нажать на флажок2, который должен поставить флажок в каждой строке, в которой он выделил ячейку.
Вот мой код, который отображает окно, в котором указано, сколько строк / ячеек было выбрано. Затем мне нужно отметить каждый флажок в сетке данных, в которой выделена ячейка в этой строке. В настоящее время в нем будет отображаться окно записи о том, какие строки / ячейки были выбраны, затем при нажатии кнопки ОК будут отмечены все флажки в сетке данных вместо просто флажков, которые имеют выделенную ячейку в этой строке.
private void checkBox2_CheckedChanged(object sender, EventArgs e)
{
Int32 selectedCellCount = dgv2.GetCellCount(DataGridViewElementStates.Selected);
if (selectedCellCount > 0)
{
if (dgv2.AreAllCellsSelected(true))
{
MessageBox.Show("All cells are selected", "Selected Cells");
}
else
{
System.Text.StringBuilder sb = new System.Text.StringBuilder();
for (int i = 0;
i < selectedCellCount; i++)
{
sb.Append("Row: ");
sb.Append(dgv2.SelectedCells[i].RowIndex.ToString());
sb.Append(", Column: ");
sb.Append(dgv2.SelectedCells[i].ColumnIndex.ToString());
sb.Append(Environment.NewLine);
}
sb.Append("Total: " + selectedCellCount.ToString());
// confirmation
MessageBox.Show(sb.ToString(), "Selected Cells");
foreach (DataGridViewRow row in dgv2.Rows)
{
row.Cells[2].Value = checkBox2.Checked && String.IsNullOrEmpty(row.Cells[0].ErrorText);
}
}
}
}
Пожалуйста, помогите ...