Как видите, вы можете не только привязать свойство Text элемента управления Label или TextBox, но также использовать и другие свойства, такие как ImageURL элемента управления Image, NavigateUrl элемента управления HyperLink и даже атрибут src статического HTML-дескриптора <img>. Вы также можете поместить выражение привязки в любом месте страницы, не привязывая его ни к какому свойству или атрибуту. Например, предыдущая Web-страница содержит выражение привязки между дескрипторами <b> и </b>. Во время обработки результирующий текст будет помещен на странице и отображен полужирным шрифтом. Вы даже можете поместить выражение вне раздела <form> до тех пор, пока не пытаетесь туда вставить элементы управления серверной стороны.

Выражения на этой странице примера ссылаются на свойство FilePath, функцию GetFilePath() и свойство Value скрытого поля серверной стороны, которое объявлено на той же странице. Чтобы завершить эту страницу, вы должны определить следующие ингредиенты в блоках сценариев или классе скрытого кода:

protected string GetFilePath ()
{
  return "apress.gif";
}

protected string FilePath
{
  get { return "apress.gif"; }
}

В этом примере свойство и функция возвращают только жестко закодированные строки. Однако вы можете добавить практически любой код С#, чтобы динамически генерировать значения для выражений привязки данных.

Важно помнить, что выражения привязки данных не устанавливают напрямую свойства, к которым они привязаны. Они просто определяют соединение между свойством элемента управления и некоторой порцией информации. Чтобы заставить страницу вычислить выражение, запустить соответствующий код, присвоить соответствующее значение, вы должны вызвать метод DataBind() содержащей страницы, как показано ниже:

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

Совет. Вызывая метод DataBind(), вы можете использовать либо текущий экземпляр страницы, как this.DataBind(), либо имя класса, как Page.DataBind(). Оба подхода эквивалентны.

На рис. 9.1 показано то, что вы увидите, запустив эту страницу. Вы еще вернетесь к выражениям привязки данных, когда будете создавать шаблоны для более сложных элементов управления в главе 10.

 

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

374

Hosted by uCoz