将控件的Enable属性绑定到CheckBox的Checked属性

时间:2014-04-23 07:16:10

标签: c# asp.net bind checked

我想设置RequiredFieldValidator控件的Enable属性,具体取决于CheckBox控件的Checked属性。我的控件包装在UpdatePanel中。如果我编写以下代码,一切正常。

ASPX / HTML:

<asp:CheckBox 
     ID="chkIsEmailSubscribed" 
     runat="server"
     OnCheckedChanged="chkIsEmailSubscribed_CheckedChanged"
     AutoPostBack="true" />

<asp:TextBox 
     ID="txtSubscriptionEmail" 
     runat="server" />

<asp:RequiredFieldValidator 
     ID="rqrSubscriptionEmail" 
     runat="server" 
     ControlToValidate="txtSubscriptionEmail"
     ErrorMessage="Email is required" />

代码隐藏:

protected void chkIsEmailSubscribed_CheckedChanged(object sender, EventArgs e)
{
    rqrSubscriptionEmail.Enabled = chkIsEmailSubscribed.Checked;
}

但是我想要在代码隐藏中编写任何代码而不是在HTML中执行此操作来实现此目的。我想用以下绑定表达式替换我的代码隐藏逻辑:

<asp:RequiredFieldValidator 
      ...
      Enabled="<%#chkIsEmailSubscribed.Checked%>" />

但是这个绑定表达式不能像我预期的那样工作。这有什么问题?

1 个答案:

答案 0 :(得分:0)

我建议您尝试从前端输出中显示<%#chkIsEmailSubscribed.Checked%>的值。