В этой книге основное внимание уделяется сочетанию теории и практики, и в основном приведены соответствующие примеры приложений для каждого аспекта технических знаний по разработке элементов управления ASP.NET.
Что касается классификации глав, они классифицируются по категориям технических вопросов. Содержание является относительно полным. Каждый технический момент разработки средств управления подробно описан. Эту книгу также можно использовать в качестве руководства по поиску.
Оглавление:
Глава 1. Обзор управления сервером и развертывание среды разработки 1
1.1 Пользовательское управление сервером 1
1.2 Роль серверных элементов управления в процессе разработки программного обеспечения 1
1.3 Совершенствуйтесь в развитии управления 2
1.4 Введение в наследуемые базовые классы управления 2
1.5 Запуск простого элемента управления 7
1.5.1 Разработка простого элемента управления 7
1.5.2 Развертывание и эксплуатация 11
1.6 Жизненный цикл управления 12
1.6.1 Обзор 12
1.6.2 Использование кода для отслеживания процесса жизненного цикла средства управления 14
1.7 Краткое содержание этой главы 17
Глава 2. Технология отладки при разработке средств управления сервером 18
2.1 Пример предустановленного кода 18
2.2 Код сервера страницы отладки 19
2.3 Отладка серверных элементов управления 20
2.3.1 Метод отладки в рабочем режиме 20
2.3.2 Метод отладки в режиме разработки 20
2.4 Метод отладки сценариев JavaScript 22
2.4.1 Отладка сценариев JavaScript на страницах (метод 1) 22
2.4.2 Отладка сценариев JavaScript на страницах (метод 2) 23
2.4.3 Отладка невстроенных файлов сценариев JavaScript 23
2.4.4 Отладка файлов ресурсов встроенных сценариев JavaScript 24
2.4.5 Советы по эффективной отладке 24
2.5 Библиотека Ajax поддерживает отладку JavaScript 26
2.6 Краткое содержание этой главы 26
Глава 3 Разработка серверных элементов управления с нуля 27
3.1 Выбор базового класса 27
3.2 Порядок представления управления 28
3.3 Несколько способов отображения элементов управления в Render 30
3.3.1 Использование класса HTMLTextWriter для вывода 30
3.3.2 Непосредственный вывод HTML-тегов 32
3.3.3 Использование RenderControl для управления сервером
Метод 33
3.4 Метод AddAttributesToRender 34
3.5 Метод CreateChildControls 35
3.6 Интерфейс INamingContainer 36
3.7 Реализация комплексных мер контроля 38
3.7.1 Метод CreateChildControls 39
3.7.2 Атрибут ChildControlsCreated 39
3.7.3 Метод SureChildControls 39
3.7.4 Метод RecreateChildControls 39
3.7.5 Свойство управления 40
3.7.6 Метод HasControls 40
3.7.7 Метод HasEvents 40
3.7.8 Метод FindControl 41
3.7.9 Пример реализации составного управления 41
3.8 Общие навыки развития 51
3.8.1 Атрибут DesignMode 51
3.8.2 Свойства маскировки в элементах управления базового класса 52
3.8.3 Свойство Page.Request.Browser 53
3.8.4 Установка спецификации идентификатора управления 53
3.8.5 Расширение функции FindControl 54
3.8.6 Сопоставление значений управления сервером с клиентом 55
3.8.7 Запретить элементам управления, производным от CompositeControl, создавать дочерние элементы управления 56
3.8.8 Примечания по использованию CreateChildControls 56
3.8.9 Не поймите неправильно мета-свойство дизайна DefaultValue 57
3.8.10 Использование ресурсов базового класса в методе Render 57
3.8.11 Условная компиляция и условные атрибуты 60
3.9 Краткое содержание этой главы 61
Глава 4. Свойства управления сервером 62
4.1 Роль свойств управления 62
4.1.1 Свойства системы 62
4.1.2 Пользовательские атрибуты 62
4.2 Простые атрибуты 63
4.3 Характеристики свойств во время проектирования 64
4.4 Комплексные атрибуты 67
4.4.1 Обзор 67
4.4.2 Несколько форм разметки сложных атрибутов 67
4.4.3 Углубленное исследование – комплексный анализатор атрибутов 79
4.5 Углубленное изучение: настройте свой собственный редактор свойств 85
4.5.1 Редактор свойств системы 85
4.5.2 Редактор пользовательских свойств 91
4.6 Преобразователи типов 126
4.6.1 Преобразователь типа системы 126
4.6.2 Настройка преобразователя типов 128
4.7 Реализация пользовательских атрибутов 138
4.8 Краткое содержание этой главы 145
Глава 5. Механизм обратной передачи событий и данных 146
5.1 Обзор событий управления и обратной передачи данных 146
5.1.1 События и их значение 146
5.1.2 Механизм обратной передачи данных 147
5.2 Реализация механизма обратной передачи событий и данных 148
5.2.1 Интерфейс события возврата клиента
IPostBackEventHandler 148
5.2.2 Раскрытие информации о обратной/обратной передаче клиента 150
5.2.3 Интерфейс обработки возвратных данных
IPostBackDataHandler 153
5.2.4 Корректная обработка событий элементов управления, унаследованных от базовых классов 159
5.2.5 Расширение функций элемента управления KingTextBox (King
TextBoxCanPostEvent (элемент управления) 161
5.3 Механизм обработки событий составных элементов управления 168
5.3.1 Высокоэффективный объект сбора событий 168
5.3.2 Настройка собственных классов делегатов и параметров событий 170
5.3.3 Обработка событий составных элементов управления 175
5.3.4 Управление функцией автозаполнения
SearchControlИнтеллектуальный 185
5.4 Краткое содержание этой главы 193
Глава 6 Стр. Государственный механизм 194
6.1 Обзор состояния страницы 194
6.2 Механизм состояния просмотра 195
6.2.1 Интерфейс IStateManager 195
6.2.2 Фазы загрузки и сохранения представлений в жизненном цикле управления 196
6.2.3 Приложение состояния представления простого типа 197
6.2.4 Реализация состояния представления пользовательского типа 205
6.3 Механизм состояния управления 217
6.4 Связь между состоянием просмотра и состоянием управления 221
6.4.1 Использование состояния просмотра, даже если состояние просмотра отключено
Объект ViewState 221
6.4.2 Интерфейс IStateManager все еще можно использовать в состоянии управления 223
6.4.3 Правила комбинированного использования состояния просмотра и состояния управления 225
6.5 Статус зашифрованной страницы 225
6.6 Очистить статус страницы 226
6.7 Анализ состояния просмотра динамически добавляемых элементов управления 228
6.8 Конвертер нестандартных типов для эффективной сериализации 231
6.9 Стратегия оптимизации производительности статуса страницы 238
6.9.1 Оптимизация места хранения — сохранение информации о состоянии просмотра на сервере, а не на клиенте 238
6.9.2 Оптимизация тома — сжатие данных состояния представления 240
6.9.3 Фрагментированное хранение данных состояния просмотра 243
6.10 Краткое описание состояния просмотра и состояния управления 243
6.11 Краткое содержание данной главы 244
Глава 7. Настройка стилей пользовательских тем элементов управления 245
7.1 Обзор стилей управления 245
7.2 Поддержка стилей ASP.NET 245
7.2.1 Принцип работы и использование класса стиля 245
7.2.2 Функции поддержки стиля базового класса WebControl и принцип их работы 249
7.2.3 Класс HTMLTextWriter поддерживает стили управления 252
7.2.4 Определение правил атрибутов стиля внутри элемента управления 253
7.2.5 Два распространенных метода преобразования 256
7.3 Примеры применения 260
7.3.1 Составной стиль управления и состояние просмотра 260
7.3.2 Структура управления и план разделения стилей 268
7.4 Краткое содержание данной главы 295
Глава 8. Модель программирования клиента управления 297
8.1 Серверное управление ASP.NET поддерживает клиент 297
8.2 Подробное объяснение функций класса ClientScriptManager 301
8.2.1 Метод 301 RegisterArrayDeclaration
8.2.2 Метод RegisterClientScriptBlock 302
8.2.3 Метод RegisterClientScriptInclude 303
8.2.4 Метод RegisterClientScriptResource 304
8.2.5 Метод RegisterStartupScript 305
8.2.6 Метод RegisterExpandoAttribute 305
8.2.7 Метод RegisterHiddenField 306
8.2.8 Метод GetCallbackEventReference 307
8.2.9 Метод GetPostBackClientHyperlink 307
8.2.10 Метод GetPostBackEventReference 308
8.2.11 Метод GetWebResourceUrl 308
8.2.12 Метод RegisterOnSubmitStatement 309
8.3 Обратный вызов клиента 309
8.4 Пример приложения управления клиентом 323
8.4.1 Инкапсуляция клиентских объектов JS 323
8.4.2 Инкапсуляция клиентских объектов HTC 343
8.4.3 Образец онлайн-приложения для контроля подписи 371
8.5 Некоторые часто используемые фреймворки JavaScript 385
8.6 Краткое содержание данной главы 387
Глава 9. Настройка пользовательских элементов управления 388
9.1 Обзор пользовательских элементов управления 388
9.1.1 Роль пользовательских элементов управления 388
9.1.2 Понимание System.Web.UI.UserControl
Базовый класс 388
9.2 Примеры приложений управления пользователем 389
9.2.1 Простые пользовательские элементы управления 389
9.2.2 Пользовательские элементы управления сложной привязкой данных 394
9.3 Кэширование пользовательского контроля 419
9.3.1 Введение в кэширование ASP.NET 419
9.3.2 Кэширование пользовательского контроля 420
9.4 Краткое содержание данной главы 421
Глава 10. Разработка средств контроля валидации 422
10.1 Как работают средства контроля валидации 422
10.1.1 Краткое описание встроенного средства контроля валидации 422
10.1.2 Анализ механизма работы проверочного контроля 423
10.2 Реализация пользовательских элементов управления проверкой 443
10.3 Краткое содержание данной главы 451
Глава 11. Использование встроенных ресурсов в элементах управления 452
11.1 Принципы внедрения ресурсов в элементы управления 452
11.2 Применение встроенных ресурсов в элементах управления 453
11.2.1 Использование встроенных ресурсов в элементах управления 453
11.2.2 Распространенные типы встроенных ресурсов и их использование 455
11.3 Общие инструменты браузера 460
11.3.1 HTTPWatch 460
11.3.2 Панель инструментов разработчика IE 461
11.3.3 Скрипач 461
11.4 Краткое содержание данной главы 462
Глава 12. Разработка элементов управления привязкой данных шаблона 463
12.1 Механизм управления атрибутами шаблона ASP.NET 463
12.1.1 Знакомство с атрибутами шаблона 463
12.1.2 Поддержка ASP.NET для элементов управления шаблонов 464
12.1.3 Анализ механизма реализации шаблона управления повторителем 466
12.2 Пример приложения пользовательского управления 469
12.2.1 Функция управления шаблоном 469
12.2.2 Примеры применения 470
12.3 Краткое содержание данной главы 489
Глава 13. Привязка данных и управление источниками данных 490
13.1 Элементы управления, привязанные к данным 490
13.1.1 Обзор элементов управления с привязкой к данным 490
13.1.2 Поддержка ASP.NET элементов управления с привязкой к данным 491
13.2 Пример приложения управления привязкой данных 501
13.2.1 Функция реализации управления 501
13.2.2 Примеры применения 502
13.3 Управление источниками данных 508
13.3.1 Обзор средств управления источниками данных 508
13.3.2 Поддержка ASP.NET для элементов управления источниками данных 508
13.4 Пример приложения для управления источниками данных 515
13.4.1 Функция реализации управления 515
13.4.2 Примеры применения 516
13.5 Краткое содержание данной главы 522
Глава 14 Решение для расширенного управления — GridView 523
14.1 Обзор расширенных элементов управления 523
14.2 Настройка нескольких заголовков GridView 523
14.2.1 Обзор функций 523
14.2.2 Реализация кода 524
14.3 Исправлен заголовок GridView и добавлена поддержка полосы прокрутки 527
14.3.1 Обзор функций 527
14.3.2 Реализация кода 528
14.4 Краткое содержание данной главы 533
Глава 15. Краткое описание программирования в режиме разработки пользовательского управления 534
15.1 .NET Framework поддерживает время разработки 534
15.2 Поддержка метаданных во время разработки 535
15.3 Сериализация сложных атрибутов 539
15.4 Преобразователи типов 539
15.5 Редактор свойств 540
15.6 Введение в базовые классы, доступные в шаблонах проектирования 541
15.7 Поддержка рендеринга элементов управления во время разработки 543
15.7.1 Обзор 543
15.7.2 Примеры применения 543
15.8 Автоформат 546
15.8.1 Обзор 546
15.8.2 Примеры применения 547
15.9 Дизайнер пользовательского интерфейса шаблонов 551
15.10 Список интеллектуальных операций 552
15.10.1 Обзор 552
15.10.2 Примеры применения 552
15.11 Область 558 дизайнера управления
15.11.1 Обзор 558
15.11.2 Примеры применения 558
15.12 Краткое содержание данной главы 562
Глава 16. Разработка Ajax-элементов управления ASP.NET.
Клиент 563
16.1 Обзор ASP.NET Ajax Framework 563
16.2 Библиотека Ajax поддерживает объектно-ориентированные функции на стороне клиента 564
16.2.1 Пространство имен, классы типов и функций 565
16.2.2 Тип интерфейса 568
16.2.3 Типы классов и функции объектно-ориентированного наследования 569
16.2.4 Типы перечислений 570
16.2.4 Функция отражения 570
16.3 Распространенные типы в библиотеке Ajax 571
16.3.1 Расширение библиотеки Ajax для базовых типов JavaScript 571
16.3.2 Sys.StringBuilder класс 576
16.4 Библиотека Ajax запрашивает сервер и
Веб-сервисы 577
16.4.1 Классы в пространстве имен Sys.NET 577
16.4.2 Анализ процесса запроса 578
16.4.3 Пример запроса WebRequest 579
16.4.4 Использование прокси-сервера для реализации сервера вызовов Ajax, пример 581
16.5 Библиотека Ajax поддерживает разработку классов клиента управления 584
16.5.1 Члены базы управления клиентом (класс/интерфейс) 584
16.5.2 Жизненный цикл клиента управления ASP.NET Ajax 589
16.6 Пример приложения управления клиентом 592
16.7 Отладка и трассировка603
16.8 Краткое содержание данной главы 605
Глава 17. Разработка Ajax-элементов управления ASP.NET.
Сервер 606
17.1 Обзор серверных элементов управления ASP.NET Ajax 606
17.2 Управление сервером Ajax 607
17.2.1 Управление сервером Ajax 607
17.2.2 Управление расширением Ajax ASP.NET 612
17.3 Базовый класс ASP.NET Ajax для поддержки управления сервером 612
17.3.1 Базовые классы, поддерживаемые элементами управления Ajax 612
17.3.2 Пример приложения управления Ajax 623
17.4 Краткое содержание данной главы 636
Приложение A. Серия технических руководств по .NET 3.5 ——
Коллекция/ASP.NET Ajax/SilverLight/JQuery 646
Расширять