Как связать свойство Text надписи в разметке - PullRequest
3 голосов
/ 16 сентября 2008

В основном я хотел бы найти способ сделать что-то вроде:

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

Я знаю, что мог бы установить его из кода позади (писать lId.Text = MyProperty), но я бы предпочел сделать это в разметке, и я просто не могу найти решение. (MyProperty является строковым свойством) веселит

Ответы [ 8 ]

10 голосов
/ 16 сентября 2008

Кодовые выражения также являются опцией. Они могут использоваться внутри кавычек в тегах ASP, в отличие от стандартных тегов <% =%>.

Общий синтаксис:

<%$ resources: ResourceKey %>

Существует встроенное выражение для appSettings:

<%$ appSettings: AppSettingsKey %>

Подробнее об этом здесь: http://weblogs.asp.net/infinitiesloop/archive/2006/08/09/The-CodeExpressionBuilder.aspx

9 голосов
/ 16 сентября 2008

Вы можете сделать

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

А затем Page.DataBind () в коде.

4 голосов
/ 16 сентября 2008

Оставьте разметку как есть и сделайте вызов Page.DataBind (); в вашем коде позади.

2 голосов
/ 16 сентября 2008
<asp:Label id="lID" runat="server"><%= MyProperty %></asp:Label>

, поскольку теги asp.net не допускают конструкции <%%>, вы не можете использовать Text = "<% = MyProperty%>".

0 голосов
/ 03 июня 2010

Вы можете сделать это:

<asp:Label ID="lblCurrentTime" runat="server">
    Last update: <%=DateTime.Now.ToString()%>
</asp:Label>
0 голосов
/ 16 сентября 2008

Когда вы используете объявление <% # MyProperty%>, вам нужно привязать его к базе данных, но при использовании <% = MyProperty%> вы этого не делаете (что похоже на простое написание Response.Write (MyProperty).

0 голосов
/ 16 сентября 2008
<div> <%=MyProperty"%></div>
0 голосов
/ 16 сентября 2008

Вызовите lID.Databind () из-за кода

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...