如何在标记中"绑定"标签的文本属性

时间:2020-03-05 18:56:16  来源:igfitidea点击:

基本上我想找到一种方法来做类似的事情:

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

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

解决方案

回答

从代码隐藏中调用lID.Databind()

回答

保留标记不变,并调用Page.DataBind();。在后面的代码中。

回答

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

由于asp.net标记不允许使用<%%>构造,因此不能使用Text =" <%= MyProperty%>"。

回答

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

回答

你可以做

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

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

回答

使用<%MyProperty%>声明时,需要对其进行数据绑定,但是使用<%= MyProperty%>时则不需要(这与只编写Response.Write(MyProperty)相似)。

回答

代码表达式也是一个选项。与标准<%=%>标签不同,它们可以在ASP标签中的引号内使用。

通用语法为:

<%$ resources: ResourceKey %>

appSettings有一个内置表达式:

<%$ appSettings: AppSettingsKey %>

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

回答

你可以这样做:

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