当前位置: 代码迷 >> ASP.NET >> 请教如何在gridview控件中实现删除命令
  详细解决方案

请教如何在gridview控件中实现删除命令

热度:7018   发布时间:2013-02-25 00:00:00.0
请问怎么在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")
……}
探讨

在Gridview控件中编辑列,添加一个模板列,在模板列中放一个LinkButton控件,在LinkButton控件中添加属性
CommandName="delete" CommandArgument='<%# Eval("ClientID") %>'这两个属性

在Gridview控件的OnRowCommand事件下写代码:

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)

我截个图给你 不知道你看的到不