- •1. Язык программирования c# 3
- •2. Базовые элементы .Net Framework 67
- •3. ТЕхнология .Net Remoting 144
- •Введение
- •1. Язык программирования c#
- •1.1. Платформа .Net – обзор архитектуры
- •1.2. Язык c# - общие концепции синтаксиса
- •1.3. Система типов языка c#
- •1.4. Преобразования типов
- •1.5. Идентификаторы, ключевые слова и литералы
- •1.6. Объявление переменных, полей и констант
- •1.7. Выражения и операции
- •1.8. Операторы языка c#
- •1.9. Объявление и вызов методов
- •1.10. Массивы в c#
- •1.11. Работа с символами и строками в c#
- •1.12. Синтаксис объявления класса, Поля и методы класса
- •1.13. Свойства и индексаторы
- •1.14. Конструкторы класса и Жизненный цикл объекта
- •1.15. Наследование классов
- •1.16. Перегрузка операЦий
- •1.17. Делегаты
- •1.18. События
- •1.19. Интерфейсы
- •1.20. Структуры и перечисления
- •1.21. Пространства имен
- •1.22. Генерация и обработка исключительных ситуаций
- •1.23. Нововведения в языке c# 2.0
- •1.24. Обобщенные типы (generics)
- •2. Базовые элементы .Net Framework
- •2.1. Метаданные и механизм отражения
- •2.2. Пользовательские и встроенные атрибуты
- •2.3. Пространство имен system.Collections
- •2.4. Работа с файлами и директориями
- •2.5. Использование потоков данных
- •2.6. Сериализация
- •2.7. Сериализация объектов в нестандартном формате
- •2.8. Введение в xml
- •2.9. Работа с xml-документами в .Net framework
- •2.10. МНогопоточное программирование
- •2.11. Синхронизация потоков
- •2.12. Асинхронный вызов методов
- •2.13. Состав и взаимодействие сборок
- •2.14. Конфигурирование сборок
- •3. ТЕхнология .Net Remoting
- •3.1. Домены приложений
- •3.2. Архитектура .Net Remoting
- •3.3. Активация удаленных объектов и их время жизни
- •3.4. Программная настройка Remoting
- •3.5. Удаленные Объекты с клиентской активацией
- •3.6. Настройка Remoting при помощи конфигурационных файлов
- •3.7. Хостинг распределенных приложений
- •3.8. Объекты-сообщения
- •3.9. Пользовательские канальные приемники
- •4.1. Архитектура ado.Net
- •4.2. Учебная база cd Rent
- •4.3. Соединение с базой данных
- •4.4. Выполнение команд и запросов к базе данных
- •4.5. Чтение данных и объект DataReader
- •4.6. Параметризированные запросы
- •4.7. Рассоединенный набор данных
- •4.8. Заполнение Рассоединенного набора данных
- •4.9. Объект класса DataColumn – колонка таблицы
- •4.10. Объекты класса DataRow – строки таблицы
- •4.11. Работа с объектом класса DataTable
- •4.12. DataSet и схема рассоединенного набора данных
- •4.13. Типизированные DataSet
- •4.14. Поиск и фильтрация данных в DataSet
- •4.15. Класс DataView
- •4.16. СиНхронизация набора данных и базы
- •5.1. Архитектура и общие концепции asp.Net
- •5.2. Пример aspx-страницы. Структура страницы
- •5.3. Директивы страницы
- •5.4. Класс System.Web.Ui.Page. События страницы
- •5.5. Серверные элементы управления
- •5.6. Элементы управления Web Controls
- •5.7. Проверочные элементы управления
- •5.8. Списковые элементы управления
- •5.9. Связывание данных
- •5.11. Управление состояниями в web-приложениях
- •5.12. Кэширование
- •5.13. Безопасность в web-приложениях
- •5.14. Создание пользовательских элементов управления
- •Литература
5.6. Элементы управления Web Controls
Наряду с серверными HTML-элементами ASP.NET предоставляет альтернативный набор классов для создания web-страниц. Это классы иерархии Web Controls. Классы данной иерархии также соответствуют элементам управления, но предоставляют развитый, унифицированный набор свойств, методов и событий, упрощающий программирование.
Иерархия классов Web Control представлена на схеме 18.
Рис. 18. Иерархия классов Web Control
Базовым классом для всех элементов управления Web Controls является класс WebControl. Основные свойства этого класса перечислены в таблице 42.
Таблица 42
Основные свойства класса WebControl
Имя свойства |
Описание |
Attributes |
Возвращает коллекцию пар имя-значение для всех атрибутов в файле .aspx для элемента управления. Может использоваться для чтения и установки нестандартных атрибутов |
AccessKey |
Позволяет установить клавишу быстрого доступа для элемента управления |
BackColor |
Фоновый цвет элемента управления |
BorderColor |
Цвет границы элемента управления |
BorderStyle |
Стиль границы: сплошная, пунктирная, двойная и т. д. |
BorderWidth |
Ширина границы элемента управления |
Controls |
Объект типа ControlCollection. Содержит ссылки на элементы управления, являющиеся «дочерними» для данного |
Enabled |
Булево значение; показывает, активен ли элемент |
EnableViewState |
Булево значение, которое управляет поддержкой сохранения состояния в элементе и его «потомках». По умолчанию – сохранение состояния включено (true) |
Font |
Свойство для настройки параметров шрифта, которым отображается информация в элементе |
ForeColor |
Цвет «переднего плана» в элементе управления. Обычно это цвет текста |
Height |
Общая высота элемента управления |
ID |
Свойство задает строку-идентификатор элемента управления (имя поля в классе-странице) |
Page |
Ссылка на объект Page, содержащий элемент управления |
Parent |
Родительский элемент управления в страничной иерархии |
Style |
Коллекция свойств CSS, которые будут добавлены к тэгу элемента при отображении. Позволяет настраивать внешний вид элемента |
TabIndex |
Позиция элемента управления в порядке переноса фокуса ввода на странице |
ToolTip |
Текст подсказки, появляющийся при наведении мыши на элемент |
Visible |
Булево значение; показывает, виден ли элемент на странице |
Width |
Общая ширина элемента управления |
Кроме перечисленных свойств класс WebControl предоставляет методы DataBind(), FindControl(), HasControls(), назначение которых аналогично соответствующим методам класса HtmlControl.
В данном параграфе будут рассмотрены те элементы управления Web Controls, которые можно назвать базовыми. Эти элементы управления, а также их специфические свойства и событие перечислены в таблице 43:
Таблица 43
Базовые злементы управления Web Controls
Элемент |
Специфические свойства |
Специфические события |
HyperLink |
ImageUrl, NavigateUrl, Target, Text |
|
LinkButton |
CommandArgument, CommandName, Text, CausesValidation |
OnClick(), OnCommand() |
Image |
AlternateText, ImageAlign, ImageUrl |
|
Panel |
BackImageUrl, HorizontalAlign, Wrap |
|
Label |
Text |
|
Button |
CommandArgument, CommandName, Text, CausesValidation |
OnClick(), OnCommand() |
TextBox |
AutoPostBack, Columns, MaxLength, ReadOnly, Rows, Text, TextMode, Wrap |
OnTextChanged() |
CheckBox |
AutoPostBack, Checked, Text, TextAlign |
OnCheckedChanged() |
RadioButton |
AutoPostBack, Checked, GroupName, Text, TextAlign |
OnCheckedChanged() |
ImageButton |
CommandArgument,CommandName,CausesValidation |
OnClick(), OnCommand() |
Table |
BackImageUrl, CellPadding, CellSpacing, GridLines, HorizontalAlign, Rows |
|
TableRow |
Cells, HorizontalAlign, VerticalAlign |
|
TableCell |
ColumnSpan, HorizontalAlign, RowSpan, Text, VerticalAlign, Wrap |
|
Literal |
Text |
|
PlaceHolder |
|
|
Объясним назначение некоторых свойств и событий элементов управления. Если булево свойство AutoPostBack установлено в значение true, то изменение состояния элемента автоматически ведет к отправке страницы на сервер. Свойство Text содержит текст или поясняющую надпись на элементе управления. Если булево свойство CausesValidation установлено в true, то при щелчке на элементе управления выполняется проверка страницы. События OnTextChanged() и OnCheckedChanged() срабатывают на сервере при изменении состояния соответствующих элементов управления. Некоторые элементы управления генерируют событие OnClick(), которое происходит при нажатии на элементе.
Три базовых элемента управления – Button, ImageButton и LinkButton – способны генерировать событие OnCommand() в дополнение к событию OnClick(). У этих элементов можно задать два текстовых свойства: CommandName и CommandArgument. Когда кнопка нажимается, значение указанных свойств можно использовать в обработчике события OnCommand().