如何在标记中“绑定”标签的Text属性

时间:2008-09-16 15:20:26

标签: c# asp.net

基本上我想找到一种ddo的方法:

<asp:Label ID="lID" runat="server" AssociatedControlID="txtId" Text="<%# MyProperty %>"></asp:Label>

我知道我可以从后面的代码设置它(写lId.Text = MyProperty),但我更喜欢在标记中进行,我似乎无法找到解决方案。 (MyProperty是一个字符串属性) 欢呼声

8 个答案:

答案 0 :(得分:10)

代码表达式也是一个选项。这些可以在ASP标记中的引号内使用,与标准&lt;%=%&gt;不同标签

一般语法是:

<%$ resources: ResourceKey %>

appSettings有一个内置表达式:

<%$ appSettings: AppSettingsKey %>

有关此内容的更多信息:http://weblogs.asp.net/infinitiesloop/archive/2006/08/09/The-CodeExpressionBuilder.aspx

答案 1 :(得分:9)

你可以做到

<asp:Label runat="server" Text='<%# MyProperty %>' />

然后是代码隐藏中的Page.DataBind()。

答案 2 :(得分:4)

保留标记并调用Page.DataBind();在你的代码背后。

答案 3 :(得分:2)

<asp:Label id="lID" runat="server"><%= MyProperty %></asp:Label>

因为asp.net标签不允许&lt; %%&gt;构造,你不能使用Text =“&lt;%= MyProperty%&gt;”。

答案 4 :(得分:0)

从代码隐藏

调用lID.Databind()

答案 5 :(得分:0)

<div> <%=MyProperty"%></div>

答案 6 :(得分:0)

使用&lt;%#MyProperty%&gt;声明你需要数据绑定它,但使用&lt;%= MyProperty%&gt;你没有(这与编写Response.Write(MyProperty)类似。

答案 7 :(得分:0)

你可以这样做:

<asp:Label ID="lblCurrentTime" runat="server">
    Last update: <%=DateTime.Now.ToString()%>
</asp:Label>