我创建了一个datagridview,它从MySQL Workbench数据库中获取所有数据。在这个datagridview下面,我创建了另一个具有相同列的数据网格。为此,我创建了一个复制功能,在从第一个datagridview选择行时,将选定的行复制到第二个datgrid。
然后我创建了文本框,显示在第二个datagridview中选择的行。
我现在要做的就是,从文本框中获取值,在第一个datagridview中匹配,然后在单击“删除”按钮后,从第一个datagridview中删除受尊重的行,并从数据库中删除。
源代码:
gem install capybara
}
答案 0 :(得分:0)
在删除按钮上单击事件btn_OnDelete()
找到gridview索引,然后按行索引查找所有id。
然后将每个gridview行id与文本框项ID进行比较
喜欢:
if(GridView1.Rows.Cell[0].Text == TextBox1.tex)
{
// Delete Query here
}
与我一起获得完整的解决方案共享代码。 见这里演示链接:CRUD Operation link
答案 1 :(得分:0)
您应该使用以下代码:
<asp:Button ID="delete" runat="server" CommandArgument='<%#Eval("Id") %>' Text="Delete" />
private void delete_btn_Click(object sender, EventArgs e)
{
//incase you need the row index
int rowIndex = ((GridViewRow)((Button)e.CommandSource).NamingContainer).RowIndex;
int Prod_Id= Convert.ToInt32(e.CommandArgument);
//followed by your code
try
{
// Then Compare your Id here in this if condition
// if (dataGridView1.Rows.Cell[0].Text == TextBox1.tex
if (Prod_id == Convert.ToInt32(TextBox1.text)) // error on this line.
{
// User Code Here
}
}
catch (System.Exception)
{
MessageBox.Show("Not able to Delete");
}
}
答案 2 :(得分:0)
请制作如下代码
private void delete_btn_Click(object sender, EventArgs e)
{
try
{
foreach (GridViewRow row in dataGridView1.Rows)
{
if (row.RowType == DataControlRowType.DataRow)
{
if (row.Cell[0].value == TextBox1.tex)
{
//delete opration here for TextBox1.tex/row.Cell[0].Text(Product_id)
break;
}
}
}
}
catch (System.Exception)
{
MessageBox.Show("Not able to Delete");
}
}