我很难找到问题的解决方案,我花了相当多的时间尝试其他解决方案无济于事。任何帮助或解释将不胜感激。
任务
如果安全列设置为restricted,我需要在asp.net Gridview中使我的超链接字段仅可见/可点击。
当前输出
守则
<asp:HyperLinkField DataNavigateUrlFields="ReportID, Reference_Num, Title, Description"
DataNavigateUrlFormatString="ReportRequest.aspx?ID={0}&Title={2}&Description={3}"
Text="Request Access" Visible='<%#Eval("Security").ToString()=="Unrestricted"?False:True %>' />
因此,您可以看到我正在尝试使用带有Eval的HyperlinkField的Visible属性来读取安全列中的相应文本。
有什么想法吗?
感谢。
答案 0 :(得分:1)
您可以使用HyperLink Control切换到TemplateField并在那里设置可见性。
text-objects
或者使用RowDataBound事件在正确的单元格中定位生成的HyperLink,并从后面的代码设置可见性。
<asp:TemplateField HeaderText="Ticket Number">
<ItemTemplate>
<asp:HyperLink ID="HyperLink1" runat="server" Visible='<%# Eval("Security").ToString() == "Security" ? false : true %>'>Request Access</asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>