Я хочу получить значение свойства из кода - PullRequest
8 голосов
/ 05 апреля 2011

У меня есть случай, когда мне нужно установить свойство Text для метки asp на странице aspx, а не из кода позади. Точнее, мне нужно установить значение для элемента управления asp на странице aspx, и это значение задается свойством в том же коде страницы позади.

, поэтому мне нужно использовать выражение, например:

<asp:Label Text="<%= MyProperty %>" ..../>

Я использую:

<%= MyProperty %> doesn't work.
<%# MyProperty %> doesn't also.

Ответы [ 3 ]

23 голосов
/ 05 апреля 2011

Default.aspx.cs

public partial class _Default : System.Web.UI.Page
{
    public string CustomTitle = "This Is Title";

    protected void Page_Load(object sender, EventArgs e)
    {
        Page.DataBind();
    }
}

Default.aspx

<asp:Label Text='<%#CustomTitle %>' runat="server" />
12 голосов
/ 05 апреля 2011

Вы должны обращаться с обычным HTML и WebControls по-разному:


обычный HTML :

Использование <%= ... %> достаточно:

<span><%= MyProperty %></span>

WebControls (материал, начинающийся с):

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

В этом случае вам также необходимо вызвать Me.DataBind() (VB) или this.DataBind(); (C #) в вашем коде, поскольку <%# ... %> являются выражениями привязки данных.

3 голосов
/ 05 апреля 2011
Page.DataBind();

Вы называете это в своем коде? Он привязывает все переменные, заданные в коде, к вашей странице.

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