DataGridView「dgv」にバインドされているデータブル「myTable」があります。DataGridView「dgv」にはチェックボックス列があります。私の目標は、ボタンイベントでチェックされた行を削除することです。もちろん、データテーブルは更新されます。現在、私のコードは、複数の行ではなく、1つの行を削除するためにのみ機能しています。
手伝ってくれてありがとう。
private void btnDel_Click(object sender, EventArgs e)
{
try
{
if (dgv.RowCount>0)
{
foreach (DataGridViewRow row in dgv.Rows)
{
DataGridViewCheckBoxCell check = row.Cells[0] as DataGridViewCheckBoxCell;
if (check.Value != null)
{
if ((bool)check.Value)
{
DataRowView currentDataRowView = (DataRowView)dgv.CurrentRow.DataBoundItem;
DataRow dataRow = currentDataRowView.Row;
int n = dgv.CurrentRow.Index;
int intID = Convert.ToInt32(dgv.Rows[n].Cells[0].Value);
myTable.Rows.Remove(dataRow);
dgv.DataSource = myTable;
Int32 intVal = Convert.ToInt32(row.Cells[1].Value);
if (intVal == intID)
{
check.Value = null;
}
}
}
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}