【摘改】在DataGrid中删除一行时弹出选择对话框

it2022-05-09  32

怎样实现在DataGrid中删除一行时弹出选择对话框,选择yes删除该行,或者弹出一个小窗口,通过小窗口上面的按钮来完成最后删除或取消超作 解决方法: 1)在该DataGrid中添加一个模板列,例如: <asp:TemplateColumn HeaderText="操作">    <ItemTemplate>       <asp:LinkButton Runat="server" ID="LinkButton1" OnClick="LinkButton_Click">删除</asp:LinkButton>    </ItemTemplate> </asp:TemplateColumn> 为你的datagird加入ItemCreated事件,在ItemCreated中为列中的服务端按钮添加服务端事件(比如btnChoice.Click+=new EventHandler(btnChoice_Click);)后btnChoice_Click可以被触发,但添加在ItemDataBound事件中则该按钮的btnChoice_Click事件不能被触发。 private void myDataGrid_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)  {    if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem )    {         CustomizeItem(e);    }  }     //添加自定义的行创建代码   private void CustomizeItem(DataGridItemEventArgs e)   {      TableCell myTableCell = e.Item.Cells[myDataGrid.Columns.Count-1];     LinkButton myDeleteButton = (LinkButton) myTableCell.Controls[0];     myDeleteButton.Attributes.Add("onclick","return confirm('你确定要删除吗?');");     myDeleteButton.ToolTip = "Delete this row";   } 2)在该DataGrid中添加事件 ItemCommand,该事件的代码如下: public void ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e) {     ListItemType lit = e.Item.ItemType;     if (lit == ListItemType.Item || lit == ListItemType.AlternatingItem)        CustomizeDel(e); }   //自定义的删除代码 private void CustomizeDel(DataGridItemEventArgs e) {     //执行删除,然后绑定数据 }

转载于:https://www.cnblogs.com/feima-lxl/archive/2010/05/28/1746730.html


最新回复(0)