在字段不为空的行上禁用网格视图链接

本文关键字:网格 视图 链接 字段 | 更新日期: 2023-09-27 17:56:35

我有一个asp网格视图,我想在状态字段不是"新"的行上禁用编辑超链接字段。我需要什么逻辑?

在字段不为空的行上禁用网格视图链接

已经

有一段时间了,但我认为您需要附加到GridViewRowDatabound 事件,然后访问该超链接以根据用于该行的数据禁用它。

添加一个template field,简单地输入这个条件:

<asp:TemplateField HeaderText="Edit">
   <asp:LinkButton ID="LinkButton1" Text="Edit" runat="server" Enabled='<%# Convert.ToString(Eval("Status")) == "New" ? true : false %>'></asp:LinkButton>
</asp:TemplateField>

可以使用 GridView 的 RowDataBound 方法。在此范围内,您可以检查状态字段的值,然后隐藏或禁用超链接。

I used something once. It is not the best practice but it worked for me.
BTW I used it an Edit Button not in an Edit Text but i think it has to work as the same way.
 In the RowDataBound Event of the GridView use this:
 if (e.Row.RowType == DataControlRowType.DataRow)
 {
        //Use the index of your Edit Cell
        if(bool.Parse(DataBinder.Eval(e.Row.DataItem, "Status"))
        {
            e.Row.Cells[8].Controls.Clear();
        }
 }