datagrid每一列的元素的事件再datagrid的属性列表的事件一栏中能够找到
比如
<asp:datagrid id="EventData" runat="server" OnDeleteCommand="Dgd_Delete" OnEditCommand="Dgd_Edit" width="709px" AutoGenerateColumns="False" OnItemDataBound="DataGrid1_ItemDataBound">这样定义后,可以在代码中加入事件处理程序,比如下面的代码就是OnItemDataBound的处理程序protected void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if (e.Item.ItemIndex >= 0)
{
e.Item.Cells[1].Text =Convert.ToString(int.Parse(e.Item.ItemIndex.ToString())+1);
LinkButton btn = (LinkButton)e.Item.Cells[10].FindControl("Linkbutton2");
btn.Attributes.Add("onClick","javascript:return confirm('确定要删除该条记录吗?');");
}
}
以上是给datagrid加上序号,和给删除的连接加上确认对话框
比如
<asp:datagrid id="EventData" runat="server" OnDeleteCommand="Dgd_Delete" OnEditCommand="Dgd_Edit" width="709px" AutoGenerateColumns="False" OnItemDataBound="DataGrid1_ItemDataBound">这样定义后,可以在代码中加入事件处理程序,比如下面的代码就是OnItemDataBound的处理程序protected void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if (e.Item.ItemIndex >= 0)
{
e.Item.Cells[1].Text =Convert.ToString(int.Parse(e.Item.ItemIndex.ToString())+1);
LinkButton btn = (LinkButton)e.Item.Cells[10].FindControl("Linkbutton2");
btn.Attributes.Add("onClick","javascript:return confirm('确定要删除该条记录吗?');");
}
}
以上是给datagrid加上序号,和给删除的连接加上确认对话框
中的FindControl("Linkbutton2");其中Linkbutton2从那里知道?
LinkButton btn = (LinkButton)e.Item.Cells[10].FindControl("Linkbutton2");
中的FindControl("Linkbutton2");其中Linkbutton2从那里知道?
错在那里吗?
例如:删除按钮就会有deleteCommand
只要在这个事件上加入你写的函数即可
//删除
private void MyDataGrid_DelCommand(object sender, System.Web.UI.WebControls.DataGridCommandEventArgs E)
{
//行的索引
int rowToDel = E.Item.ItemIndex;
//删除的关键字段和值
//string strKey = E.Item.Cells[6].Text;
string strKeyField = MyDataGrid.DataKeyField.ToString();
string strKeyValue = MyDataGrid.DataKeys[rowToDel].ToString();
//删除操作
DeleteDataHandle("Customers", strKeyField, strKeyValue);
//重新绑定数据
BindGrid();
}其他的按钮也差不多!
DATAGRID的编辑、删除按钮是需要在后台写事件的,帮助里面都有代码,你自己找找看就知道了。
给分!可惜少了点,SORRY!