0

我有一个从数据库中提取数据的gridview:

在此处输入图像描述

我不想让任务中的内容成为一个链接按钮,可以点击它来显示一个带有附加信息的弹出窗口。

当我制作列链接按钮时,它也在制作 Total: 和 Subtotal: 链接按钮: 在此处输入图像描述

            <asp:TemplateField HeaderText="Task" ItemStyle-Width="20%">
                <ItemTemplate>
                    <asp:LinkButton ID="taskLinkButton" runat="server"
                        Text='<%# Eval("Task")%>'>
                    </asp:LinkButton>
                </ItemTemplate>
            </asp:TemplateField>

如何防止这些特定行成为链接按钮?

4

2 回答 2

1

有点脏,但这应该可以解决问题:

所以我无法在 <% %> 中调用 Databinder.Eval,我不确定它是否真的可行,所以我采用了不同的解决方案。以下对我有用(甚至比上一个版本更短):

<asp:TemplateField>
    <ItemTemplate>
            <asp:LinkButton Text='<%# Eval("task") %>' Visible='<%# Eval("incidentN") != null %>' runat="server" />
            <asp:Literal Text='<%# Eval("task") %>' Visible='<%# Eval("incidentN") == null %>' runat="server" />
    </ItemTemplate>
</asp:TemplateField>
于 2013-10-30T15:13:12.490 回答
0

您可以使用具有条件可见性的 PlaceHolder

<asp:PlaceHolder ID="Ok" runat="server" Visible='<%# (Eval("LoadStatus").ToString()=="false"?true:false) %>'><%----%>
   <asp:Label ID="Label1" Text='<%# Eval("Task")%>' runat="server" />
</asp:PlaceHolder>
<asp:PlaceHolder ID="Ko" runat="server" Visible='<%# (Eval("LoadStatus").ToString()=="false"?false:true) %>'><%----%>
                <asp:LinkButton ID="taskLinkButton" runat="server"
                    Text='<%# Eval("Task")%>'>
                </asp:LinkButton>
</asp:PlaceHolder>
于 2013-10-30T15:13:31.370 回答