新手篇之datagrid编辑,更新列示例

  <asp:DataGrid OnItemCommand="subroot_delete" OnEditCommand="subroot_edit" OnCancelCommand="subroot_cancel"
             OnUpdateCommand="subroot_update" HorizontalAlign="Center" ID="root" Runat="server" AllowPaging="True"
             AutoGenerateColumns="False" PagerStyle-Mode="NumericPages" OnPageIndexChanged="pagechange"
             Width="500">
             <Columns>
              <asp:BoundColumn DataField="id" HeaderText="编号" ReadOnly="True"></asp:BoundColumn>
              <asp:TemplateColumn HeaderText="名称">
               <ItemTemplate>
                <asp:Label Runat="server" Text='<%#DataBinder.Eval(Container.DataItem,"rootname")%>' ID="Label1" NAME="Label1">
                </asp:Label>
               </ItemTemplate>
               <EditItemTemplate>
                <asp:TextBox Runat=server Text='<%#DataBinder.Eval(Container.DataItem,"rootname")%>' ID="rootname">
                </asp:TextBox>
               </EditItemTemplate>
              </asp:TemplateColumn>
              <asp:TemplateColumn HeaderText="排序号">
               <ItemTemplate>
                <asp:Label Runat="server" Text='<%#DataBinder.Eval(Container.DataItem,"pxh")%>' ID="Label2" NAME="Label2">
                </asp:Label>
               </ItemTemplate>
               <EditItemTemplate>
                <asp:TextBox Runat=server Text='<%#DataBinder.Eval(Container.DataItem,"pxh")%>' ID="pxh">
                </asp:TextBox>
               </EditItemTemplate>
              </asp:TemplateColumn>
              <asp:TemplateColumn HeaderText="所属目录">
               <ItemTemplate>
                <asp:Label Runat="server" Text='<%#DataBinder.Eval(Container.DataItem,"parentid")%>' ID="rootname2">
                </asp:Label>
               </ItemTemplate>
               <EditItemTemplate>
                <asp:Label Visible=False Runat="server" Text='<%#DataBinder.Eval(Container.DataItem,"parentid")%>' ID="rootname3">
                </asp:Label>
                <asp:DropDownList ID="parentid" Runat="server"></asp:DropDownList>
               </EditItemTemplate>
              </asp:TemplateColumn>
              <asp:EditCommandColumn ItemStyle-Width="80" ButtonType="LinkButton" UpdateText="更新" HeaderText="操作" CancelText="取消"
               EditText="编辑" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center">
               <ItemStyle Wrap="False"></ItemStyle>
              </asp:EditCommandColumn>
              <asp:ButtonColumn Visible="False" ButtonType="LinkButton" Text="删除" CommandName="delete" HeaderText="删除"
               ItemStyle-Width="40" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center" />
             </Columns>
            </asp:DataGrid>

public void subroot_edit(Object sender, DataGridCommandEventArgs e)
  {
   root.EditItemIndex = e.Item.ItemIndex;
   root.Columns[5].Visible=true;
   bindgrid();
   showpage();
  }
 
  public void subroot_cancel(Object sender, DataGridCommandEventArgs e)
  {
   root.Columns[5].Visible=false;
   root.EditItemIndex = -1;
   bindgrid();
   showpage();
  }
 
  public void subroot_update(Object sender, DataGridCommandEventArgs e)
  {
   TextBox rootname=(TextBox)e.Item.Cells[1].FindControl("rootname");
   TextBox pxh=(TextBox)e.Item.Cells[2].FindControl("pxh");
   DropDownList dp=(DropDownList)e.Item.Cells[3].FindControl("parentid");
   help.comp.root obj=new help.comp.root();
   obj.updateroot(rootname.Text,pxh.Text,e.Item.Cells[0].Text,dp.SelectedValue);
   root.EditItemIndex = -1;
   root.Columns[5].Visible=false;
   bindgrid();
   showpage();
  }
  public void subroot_delete(Object sender, DataGridCommandEventArgs e)
  {
   switch(((LinkButton)e.CommandSource).CommandName)
   {
    case "delete":
     subroot_del(e);
     break;
    default:
     break;
   }
  }
  private void subroot_del(DataGridCommandEventArgs e)
  {
   help.comp.root obj=new help.comp.root();
   obj.delroot(e.Item.Cells[0].Text);
   root.EditItemIndex = -1;
   root.Columns[5].Visible=false;
   bindgrid();
   showpage();
  }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值