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

怎样实现在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
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值