我的代码:
<asp:HyperLinkField Text="Static<br />Map" HeaderText=""
DataNavigateUrlFields="PWSNO,TAG_NO"
Visible = '<%# Eval("Status").ToString() == "Inactive" ? false : true %>'
DataNavigateUrlFormatString="index.aspx?No={0}&tag={1}"
ItemStyle-HorizontalAlign="Center" Target="_blank" />
我要做的是,如果“Status”属性返回“Inactive”值,我不希望创建该列中的链接。
但是使用我现有的代码,我收到错误说明
错误数据绑定表达式仅在具有DataBinding事件的对象上受支持。 System.Web.UI.WebControls.HyperLinkField没有DataBinding事件。
答案 0 :(得分:1)
您需要使用具有DataBinding事件的TemplateField
。
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="">
<asp:Hyperlink Text="Static<br />Map" Target="_blank"
Visible = '<%# Eval("Status").ToString() == "Inactive" ? false : true %>'></asp:Hyperlink>
</asp:TemplateField>
您必须手动设置NavigateUrl
。