在单击 GridView 控件中的按钮时,将引发 RowCommand 事件。这使您可以提供一个这样的事件处理方法,即每次发生此事件时执行一个自定义例程。
GridView 控件中的按钮也可调用该控件的某些内置功能。若要执行这些操作之一,请将按钮的 CommandName 属性设置为下表中的某个值。
CommandName 值
说明
“Cancel”
取消编辑操作并将 GridView 控件返回为只读模式。引发 RowCancelingEdit 事件。
“Delete”
删除当前记录。引发 RowDeleting 和 RowDeleted 事件。
“Edit”
将当前记录置于编辑模式。引发 RowEditing 事件。
“Page”
执行分页操作。将按钮的 CommandArgument 属性设置为“First”、“Last”、“Next”、“Prev”或页码,以指定要执行的分页操作类型。引发 PageIndexChanging 和 PageIndexChanged 事件。
“Select”
选择当前记录。引发 SelectedIndexChanging 和 SelectedIndexChanged 事件。
“Sort”
对 GridView 控件进行排序。引发 Sorting 和 Sorted 事件。
“Update”
更新数据源中的当前记录。引发 RowUpdating 和 RowUpdated 事件。
尽管单击上表中所列出的按钮时将引发 RowCommand 事件,但仍建议您使用该表中列出的事件来执行该操作。
将 GridViewCommandEventArgs 对象传递到事件处理方法,以便您可以确定被单击按钮的命令名和命令参数。
注意
GridViewCommandEventArgs 类未包含一个用于指示单击按钮所在行的属性。如果需要知道哪个行引发了事件,请使用 CommandArgument 属性将行的索引传给事件处理方法。
GridView.DataKeys 属性
属性值
类型:System.Web.UI.WebControls..::.DataKeyArray
一个 DataKeyArray,其中包含 GridView 控件中每一行的数据键。
备注
当设置了 DataKeyNames 属性时,GridView 控件自动为该控件中的每一行创建一个 DataKey 对象。DataKey 对象包含在 DataKeyNames 属性中的指定的字段的值。DataKey 对象随后被添加到控件的 DataKeys 集合中。使用 DataKeys 属性检索 GridView 控件中特定数据行的 DataKey 对象。
说明:
可使用 SelectedDataKey 属性检索当前选中行的 DataKey 对象。还可以使用 SelectedValue 属性直接检索当前选中行的数据键值。
view plaincopy to clipboardprint?
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "mydelete")
{
string conString = ConfigurationManager.AppSettings["conString"];
int deleteid = (int)GridView1.DataKeys[Convert.ToInt32(e.CommandArgument.ToString().Trim())].Value;
SqlConnection con = new SqlConnection(conString);
con.Open();
string deletequery = "delete from classinfor where classid=" + deleteid + "";
SqlCommand cmd = new SqlCommand(deletequery,con);
try
{
cmd.ExecuteNonQuery();
}
catch
{
Response.Write("<script language='javascript'>alert('请先删除此班所有学生!');</script>");
}
GridView1.DataBind();
con.Close();
}
}
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。