请问怎么在gridview控件中实现删除命令
我是新手。。。
<asp:GridView ID="Grid_select" runat="server" DataKeyNames="Sno,Cno">
<Columns>
<asp:ButtonField CommandName="Delete" Text="删除" />
</Columns>
</asp:GridView>
我编辑到这里就不知道怎么编辑下去了。。。
后台只写了怎么把查询的数据放入gridview中。。。
protected void Button_select_Click(object sender, EventArgs e)
{
string connString = "Data Source=MAPLE\\MAPLE;Initial Catalog=SC_System;Integrated Security=True";
string Sno_addition = "";
string Cno_addition = "";
if (Txt_Sno.Text == "")
{
Sno_addition = "";
}
else
{
Sno_addition = "AND Sno = '" + Txt_Sno.Text.ToString() + "'";
}
if (Txt_Cno.Text == "")
{
Cno_addition = "";
}
else
{
Cno_addition = "AND Cno = '" + Txt_Cno.Text.ToString() + "'";
}
string sql = "SELECT * FROM SC WHERE 1 = 1 " + Sno_addition + Cno_addition;
SqlConnection conn = new SqlConnection(connString);
SqlDataAdapter adapter = new SqlDataAdapter(sql, conn);
DataSet set = new DataSet();
adapter.Fill(set);
this.Grid_select.DataSource = set.Tables[0];
this.Grid_select.DataBind();
}
------解决方案--------------------可以用grid的gridcommand事件,然后用e.CommandName 去判断点击按钮
------解决方案--------------------在Gridview控件中编辑列,添加一个模板列,在模板列中放一个LinkButton控件,在LinkButton控件中添加属性
CommandName="delete" CommandArgument='<%# Eval("ClientID") %>'这两个属性
在Gridview控件的OnRowCommand事件下写代码:
if(e.CommandName=="delete")
{
//这个ID就是你删除行的ID
string ID=e.CommandArgument.tostring();
}
------解决方案--------------------Gridview中,加入1列,可以用模版列(模版列会吧),用CommandName事件,也可以用自带的CommandField字段中,加入删除字段(其实原理与模版列类似),然后用GridView中的RowDeleted事件来处理就好了!用模版列的话,参照楼上大神的处理!
能理解不?
------解决方案--------------------+1
在commend事件下写判断
if(e.CommandName=="delete")
……}
------解决方案--------------------很 简单的楼主 给你一个案例, 后台代码都不用的
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" CommandName="delete" OnClientClick="javascript:return confirm('确认删除么?');" >删除</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
用个 这个
然后 配置 数据源 datasource, 在里面一个delete 语句 DELETE FROM Student WHERE (student_ID = @student_ID)
我截个图给你 不知道你看的到不