2009-10-23 38 views
2

为什么不能使用代码块来设置控件属性?例如,按钮的验证组或标签的文本属性。使用代码块设置控件属性

<asp:Button ID="btn" runat="server" Text="test" ValidationGroup='<% =TestValidate %>' 

<asp:Label ID="lbl" runat="server" Text='<% =Test %>' /> 

有没有什么办法可以在不使用代码隐藏的情况下设置控件属性?

回答

3

您可以使用数据绑定:

<asp:Label ID="lbl" runat="server" Text='<%# "Hello World" %>' /> 

只要您在后面的代码调用DataBind

protected void Page_Load(object sender, EventArgs e) 
{ 
    if (!IsPostBack) 
    { 
     DataBind(); 
    } 
} 
+0

嗯......这实际上是一个好主意,但是这次我认为不适合使用代码毕竟。:) 10x很多为您的时间。 – TestSubject09 2009-10-23 09:51:31

1

<%=SomeVar %>使用后期绑定,其行为类似的Response.Write(在Page.PreRender,如果我没记错的话)。因此它不会像你想要的那样被服务器控件利用。除非使用代码隐藏或内联代码隐藏来执行绑定。