我有一个绑定到 DataTable 的 DataGridView。我添加了一个 DataGridViewButtonColumn 作为该行的删除按钮。
由于它绑定到 DataTable,我希望能够通过单击删除按钮获取行的对象,以便我可以从 DataTable 中删除它,然后刷新 DataGrid。
这就是我的按钮的设置方式:
var colDelete = new DataGridViewButtonColumn();
colDelete.Name = "DeleteButton";
colDelete.HeaderText = "Delete";
colDelete.Text = "Delete";
colDelete.UseColumnTextForButtonValue = true;
colDelete.DataPropertyName = "EthnicityDetailID";
colDelete.DisplayIndex = 10;
dataGridEthnicityData.Columns.Add(colDelete);
这就是我计划处理按钮单击事件的方式:
private void dataGridEthnicityData_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
try
{
var senderGrid = (DataGridView)sender;
if (senderGrid.Columns[e.ColumnIndex] is DataGridViewButtonColumn &&
e.ColumnIndex == senderGrid.Columns["DeleteButton"].Index)
{
//ethnicityDataTable.Rows.RemoveAt(e.RowIndex);
dataGridEthnicityData.Refresh();
}
}
catch (Exception ex)
{
MessageBox.Show("Error deleting ethnicity data: " + ex.Message + " " + ex.StackTrace);
}
}
如何将 EthnicityDetailID 分配为按钮的值,以及如何检索单击按钮作为对象的行,以便我可以检索值并在数据表中相应地删除?
谢谢你。