GridView的模板列如何编辑

本文介绍了一个ASP.NET中使用GridView控件时自定义显示链接URL字段的方法。通过设置TemplateField,实现链接URL的截断显示及提供完整的链接作为ToolTip,并允许编辑更新链接文本。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

aspx:
 <asp:TemplateField>
     <ItemTemplate>
          <asp:Label ID="Label1" runat="server" Text='<%# Eval("LinkUrl").ToString().Length > 50? Eval("LinkUrl").ToString().Substring(0,50)+"...":Eval("LinkUrl") %>'
 ToolTip='<%# Eval("LinkUrl") %>'>
          </asp:Label>
     </ItemTemplate>
      <EditItemTemplate>
            <asp:TextBox ID="txtLink" runat="server" Text='<%# Eval("LinkUrl") %>' Width="320px">
           </asp:TextBox>
      </EditItemTemplate>
       <HeaderTemplate>
             <asp:Literal ID="Literal2" runat="server" Text="Link Url"></asp:Literal>
       </HeaderTemplate>
        <ItemStyle HorizontalAlign="Left" Width="320px" />
</asp:TemplateField>


cs:

protected void grdType_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
    string linkID = grdType.DataKeys[e.RowIndex].Value.ToString();
    string linkText = (((TextBox)grdType.Rows[e.RowIndex].Cells[1].Controls[0]).Text).ToString().Trim();
    string linkUrl = (((TextBox)grdType.Rows[e.RowIndex].Cells[2].FindControl("txtLink")).Text).ToString().Trim();

    LinkBLL platBLL = new LinkBLL();
    int i = platBLL.UpdateLink(linkText, linkUrl, Int32.Parse(linkID));
    if (i > 0)
    {
        ClientScript.RegisterStartupScript(this.GetType(), "", "alert('Update Link sucessfully!')", true);//提示编辑成功
     }
     grdType.EditIndex = -1;//释放当前所编辑的行
     BindLink();//重新绑定GridView
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值