Вот пример:


<%# выражение_находится_здесь %>

Это может выглядеть как блок сценария, однако оно таковым не является. Если вы попытаетесь написать любой код внутри дескриптора, то получите ошибку. Единственное, что сюда можно поместить — это допустимое выражение привязки. Например, если у вас есть общедоступная или защищенная переменная в именем EmployeeName, вы можете написать следующее:


<%# EmployeeName %>

Чтобы вычислить выражение привязки вроде этого, вы должны вызвать в своем коде метод Page.DataBind(). Когда вы вызываете Page.DataBind(), ASP.NET проверяет все выражения на вашей странице и заменяет их соответствующими значениями (в данном случае — текущим значением переменной EmployeeName). Если вы забудете вызвать метод DataBind(), выражение привязки не заполнит элемент управления — вместо этого он будет просто отброшен, когда ваша страница будет преобразована в HTML.

Источник для привязки одного значения может включать значение свойства, переменную-член или возвращаемое значение функции (до тех пор, пока свойство, переменная-член или функция имеет доступ типа protected или public). Это также может быть любое другое выражение, которое может быть вычислено во время выполнения, такое как ссылка на свойство другого элемента управления или как результат вычисления с использованием литеральных значений и операций с ними, и так далее. Вот несколько примеров корректных выражений привязки данных:

<%# GetUserName(ID) %>
<%# 1 + (2 * 20) %>
<%# "John " + "Smith" %>
<%# Request.Browser.Browser %>

Вы можете размещать ваши выражения привязки данных практически в любом месте страницы, но обычно вы будете присваивать выражение привязки данных свойству в управляющем дескрипторе. Рассмотрим пример страницы, использующей несколько выражений привязки данных:

<html>
<body>
<form method="post" runat="server">
<asp:Image ID="Image1" runat="server" ImageUrl ='<%# FilePath %>' /><br />
<asp:Label ID="Label1" runat="server" Text='<%# FilePath %>' /><br />
<asp:TextBox ID="TextBox1" rurtat="server" Text='<%# GetFilePath() %>' /><br />
<asp:HyperLink ID="HyperLink1" runat="server"
  HavigateUrl='<%# LogoPath.Value %>' Font-Bold="True" Text="Show logo" />
<br />
<input type="hidden" ID="LogoPath" runat="server" value="apress.gif">
<b><%# FilePath %></b><br />
<img src="<%# GetFilePath() %>">
</form>
</body>
</html>

предыдущая    следующая страница   оглавление

373

Hosted by uCoz