- •Java и c# технологии прикладного програмирования
- •Java и c# технологии прикладного програмирования
- •Содержание
- •Введение
- •Лабораторная работа № 1 Коллекции c#
- •Цель работы
- •Теоретические сведения
- •Общие сведения о платформе .Net
- •Общие сведения о коллекциях c#
- •Обобщенные коллекции с#
- •Порядок выполнения лабораторной работы
- •Задание на лабораторную работу
- •Содержание отчета
- •Получение информации о типе
- •Экземпляр типа Type
- •Получение экземпляра типа Type
- •Динамическая загрузка сборок
- •Динамическая загрузка типов
- •Исследование типа
- •Характеристики типа как целого
- •Члены класса
- •Динамическое создание объекта и вызов методов
- •Создание объекта по его типу
- •Динамический вызов методов
- •Использование интерфейсов
- •Позднее связывание
- •Динамическое приведение типов
- •Новые механизмы абстракции
- •Динамическое создание типов
- •Динамическое создание программного кода
- •Динамическое создание класса
- •Динамическое создание перечислений
- •Динамический "Hello World!"
- •Динамическое разворачивание циклов
- •Атрибуты
- •Атрибут это класс
- •Декларативное программирование
- •Код, выполняемый во время разработки
- •Использование атрибутов
- •Использование встроенных атрибутов
- •Определение и использование пользовательских атрибутов
- •Пример декларативного программирования
- •Порядок выполнения работы
- •Задание на лабораторную работу
- •Содержание отчета
- •Связный уровень взаимодействия ado.Net
- •Несвязный уровень взаимодействия ado.Net
- •Порядок выполнения работы
- •Задание на лабораторную работу
- •Содержание отчета
- •Связи между объектами в FluentNHibernate
- •Связь один к одному
- •Связь один ко многим
- •Связь многие ко многим
- •Способы выборки объектов в FluentNHibernate
- •Запросы NativeSql
- •Запросы по критерию
- •Запросы по образцу
- •Запросы hql
- •Порядок выполнения работы
- •Задание на лабораторную работу
- •Содержание отчета
- •Компиляция страниц по требованию
- •Страница asp.Net 2.0
- •Директива @Page
- •Жизненный цикл страницы
- •Новые свойства и методы объекта Page
- •Управление страницей
- •Установка выделения на элемент управления
- •Обновление данных без перезагрузки страницы
- •Отправка данных формы другой странице asp.Net
- •Шаблоны дизайна страниц
- •Создание шаблона дизайна
- •Создание страницы
- •Обработка шаблонов средой asp.Net
- •Использование разных шаблонов для разных браузеров
- •Порядок выполнения работы
- •Задание на лабораторную работу
- •Содержание отчета
- •Библиотеки модульного тестирования в .Net
- •Unit Testing Framework от Microsoft
- •Порядок выполнения работы
- •Задание на лабораторную работу
- •Содержание отчета
- •Контрольные вопросы
- •Рекомендованная литература
Новые свойства и методы объекта Page
Для управления приведенными в предыдущем разделе событиями и получения информации о результатах их выполнения, у объекта Pageв ASP.NET 2.0 появились следующие новые методы и свойства:
ClientScript. Содержит ссылку на экземпляр объектаClientScriptManager, который позволяет работать с клиентскими скриптами (регистрировать блоки клиентского кода, создавать скрытые поля и т.п.);
EnableTheming. Свойство, позволяющее отключить поддержку тем оформления на странице, если применение темы нежелательно;
GetValidators. Метод, возвращающий коллекцию валидаторов данной страницы;
Header. Ссылка на объект HtmlHead, позволяющий контролировать содержимое раздела<head>HTML страницы, при условии, что для элементаheadустановлен атрибутrunat="server";
IsAsync. Свойство, указывающее на способ обработки страницы – синхронный или асинхронный;
IsCrossPagePostBack. Свойство, позволяющее определить, была ли данная страница запрошена в ответ на отправку данных с другой страницы;
Master. Ссылка на экземпляр объекта шаблона страницы;
MasterPageFile. Свойство, содержащее имя файла шаблона страницы;
MaxPageStateFieldLength. Устанавливает максимальный размер одного поля, хранящего состояние, в байтах. Если этому свойству присвоено число, меньшее, чем размер информации о состоянии, которую необходимо сохранить, то будет создано несколько скрытых полей, объем данных в каждом не будет превышать значенияMaxPageStateFieldLength;
PageAdapter. Свойство возвращает объектPageAdapter, управляющий генерацией HTML представления страницы. КонкретныйPageAdapterустанавливается средой выполнения в зависимости от параметровRequets. Если выбранPageAdapter, то события жизненного цикла страницы замещаются событиямиPaeAdapter;
PreviousPage. Ссылка на экземпляр объекта страницы, с которой было осуществлено отправление формы;
SetFocus. Метод, позволяющий установить выделение на какой-либо из видимых на странице элементов управления;
StyleSheetTheme, Theme. Смотрите выше описание новых атрибутов директивы@Page.
TestDeviceFilter. Метод, проверяющий является ли текущий браузер браузером указанного в качестве аргумента типа;
Title. Свойство, позволяющее получить и изменить заголовок страницы.
Управление страницей
Установка выделения на элемент управления
Иногда бывает необходимо, чтобы после загрузки страницы выделение было установлено на какой-то определенный элемент управления (например, в поисковой форме логично установить фокус ввода на основное поле поиска), для этого можно задать значение атрибута defaultfocusтегаform.
<form id="frmMain" runat="server" defaultfocus="txtFirstName">
<asp:TextBox ID="txtFirstName" runat="server" />
<asp:TextBox ID="txtSecondName" runat="server" />
<asp:TextBox ID="txtLastName" runat="server" />
</form>
Выделением можно управлять программно, вызывая метод SetFocus, передавая в качестве параметра уникальный идентификатор этого элемента:
protected void Page_Load(object sender, EventArgs e)
{ if(isPostBack)
{ SetFocus("txtLastName");
}
else
{ SetFocus("txtFirstText");
}
}