加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 内联代码不作为后面的代码执行

发布时间:2020-12-16 07:38:28 所属栏目:asp.Net 来源:网络整理
导读:注意:另一篇文章( Set Visible property with server tag %= % in Framework 3.5)也对这个问题提供了更详细的答案. 我很好奇为什么内联代码在这种情况下不像代码隐藏. 我有一个包含如下设置的类: // Collection of Settingspublic static class FeatureCon
注意:另一篇文章( Set Visible property with server tag <%= %> in Framework 3.5)也对这个问题提供了更详细的答案.

我很好奇为什么内联代码在这种情况下不像代码隐藏.

我有一个包含如下设置的类:

// Collection of Settings
public static class FeatureControl
{
     public static bool SettingName = true;
}

Code Behind按预期执行.

Label1.Visible = FeatureControl.SettingName; //true
Label2.Visible = !FeatureControl.SettingName; //false

无论SettingName的值如何,内联代码始终显示两个标签:

<asp:Label ID="Label1" Visible="<%#FeatureControl.SettingName%>"  runat="server" >  </asp:Label>
<asp:Label ID="Label2" Visible="<%#FeatureControl.SettingName != true %>"  runat="server" ></asp:Label>

解决方法

由于<%#%>是一个数据绑定表达式,我很确定你必须调用Page.DataBind().试试看:

protected void Page_Load(object sender,EventArgs e) 
{
     DataBind();
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读