我的问题是我在网格视图中有一个删除按钮。如果我点击删除按钮,需要删除特定行,并且需要更新该行的某些列,并且单击同一按钮。
示例如果我单击删除该行需要删除的行...该行具有在删除前处于活动状态的状态列,在单击删除后该列状态应更改为删除,并且应删除行以及另一列id应该更改为null。
非常困惑如何在单击上执行这两项操作
答案 0 :(得分:0)
您应该对分配给DataGrid的 DataSource 执行更新/删除等所有操作。为了您的方便
private void PopulateThirdCombo()
{
try
{
DataTable dt = new DataTable();
dt.Columns.Add("Product ID");
dt.Columns.Add("Product Name");
dt.Columns.Add("Product Price");
dt.Columns.Add();
dataGridView1.ColumnCount = 3;
dataGridView1.Columns[0].Name = "Product ID";
dataGridView1.Columns[1].Name = "Product Name";
dataGridView1.Columns[2].Name = "Product Price";
string[] row = new string[] { "1", "Product 1", "1000" };
dataGridView1.Rows.Add(row);
row = new string[] { "2", "Product 2", "2000" };
dataGridView1.Rows.Add(row);
row = new string[] { "3", "Product 3", "3000" };
dataGridView1.Rows.Add(row);
row = new string[] { "4", "Product 4", "4000" };
dataGridView1.Rows.Add(row);
DataGridViewButtonColumn btn = new DataGridViewButtonColumn();
dataGridView1.Columns.Add(btn);
btn.HeaderText = "Action";
btn.Text = "Delete";
btn.Name = "btn";
btn.UseColumnTextForButtonValue = true;
}
catch (Exception)
{
}
}
private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
try
{
//this will be index of your delete button
if (e.ColumnIndex == 3)
{
this.dataGridView1.Rows.RemoveAt(e.RowIndex);
}
}
catch (Exception)
{
}
}
注意:首先调用PopulateThirdCombo()