<script>, как упоминалось ранее.

Так как мы предоставляем специальный базовый класс для страницы, мы будем иметь специальные события. Чтобы гарантировать, что IIS знает об этом, мы используем атрибут AutoEventWireup, который означает, что обработчик событий Page_Load(), вызываемый при загрузке страницы, связывается автоматически с событием OnPageLoad. Задавая этот атрибут как false, мы должны предоставить, если потребуется, свой собственный код для выполнения этого, что даст нам большую свободу действий.

Теперь посмотрим на 'код позади' кода, сгенерированного для этого файла. Чтобы сделать это, щелкнем правой кнопкой мыши на WebForm1.aspx в утилите анализа решения (solution explorer) и выберем View Code. Код WebForm1.aspx.cs должен загрузиться в текстовый редактор. Прежде всего можно видеть объявление пространств имен для приложения Web, за которым следует используемое по умолчанию множество ссылок, требуемое для базового использования:

namespace PCSWebAppl {

 using System;

 using System.Collections;

 using System.ComponentModel;

 using System.Data;

 using System.Drawing;

 using System.Web;

 using System.Web.SessionState;

 using System.Web.UI;

 using System.Web.UI.WebControls;

 using System.Web.UI.HtmlCotrols;

Двигаясь дальше, мы видим определение WebForm1 — базового класса, используемого для страницы .aspx. Этот класс наследует из System.Web.UI.Page, базового класса форм Web:

 /// <summary>

 /// Краткое описание WebForm1

 /// </summary>

 public class WebForm1 : System.Web.UI.Page {

Остальная часть кода в этой форме выполняет различные инициализационные задачи, а также включает код, требуемый для создания форм Web в VS. Конструктор регистрирует обработчика событий Page_Init(), вызываемого во время активации страницы и используемого VS для кода, связанного с созданием временных добавлений к форме (хранимых в InitializeComponent(), который вызывается этим обработчиком). Существует также обработчик событий Page_Load(), упоминавшийся ранее:

  public WebForm1() {

   Page.Init += new System.EventHandler(Page_Init)

  }

  protected void Page_Load(object sender, System.EventArgs e) {

   // Поместите здесь код пользователя для инициализации страницы

  }

  protected void Page_Init(object sender, EventArgs e) {

   //

   // CODEGEN: Этот вызов требуется для ASP.NET Windows

   // Form Designer.

   //

   InitializeComponent();

  }

Сам метод InitializeComponent() содержится в блоке #region, поэтому мы используем схематичное представление в VS, чтобы его скрыть, поскольку он быстро заполнится сгенерированным кодом VS (так же как аналогичный ему метод в коде форм Windows):

#region код, созданный Web Form Designer

  /// <summary>

  /// Метод, требуемый для поддержки Designer; не изменяйте

  /// содержимое этого метода с помощью редактора кода.

  /// </summary>

  private void InitializeComponent() {

   this.Load += new System.EventHandler(this.Page_Load);

  }

#endregion

 }

}

Так как AutoEventWireup был задан как false, то InitializeComponent() должен зарегистрировать Page_Load() с событием Load.

Строго говоря, этот код больше, чем требуется для простой страницы формы Web ASP.NET, которую мы уже видели (хотя и в качестве тривиального примера). Однако созданная структура приспособлена для целей повторного использования и расширения с помощью технологий C#, не требуя заметного объема накладных расходов, поэтому мы будем ее использовать.

Серверные элементы управления ASP.NET

Созданный нами код делает пока еще очень немногое, поэтому далее нам нужно добавить некоторое содержимое. Можно сделать это в VS, используя построитель форм Web, который поддерживает режим перетаскивания элементов и добавления через код точно так же, как построитель форм Windows.

Существует четыре типа элементов управления, которые можно добавлять к страницам ASP.NET:

□ Элементы управления сервера HTML — элементы управления, которые имитируют элементы HTML, известные разработчикам HTML

□ Элементы управления сервера Web — новое множество элементов управления, некоторые из которых имеют такую же функциональность, как и элементы управления HTML, но с общей схемой имен свойств и т.д., служащей для облегчения разработки (и обеспечения согласованности с аналогичными элементами управления форм Windows); существует также несколько совершенно новых и очень мощных элементов управления, как мы увидим позже

□ Элементы управления проверкой достоверности — множество элементов управления, способных выполнять простую проверку ввода пользователя

□ Заказные и обычные элементы управления пользователя — элементы управления, используемые разработчиком, которые можно определить рядом способов, как будет показано в главе 18

Мы увидим полный список элементов управления сервера Web и проверкой достоверности в

Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату