Пользовательские конструкторы
Обновлен: Ноябрь 2007
Платформа .NET Framework предоставляет возможность задавать пользовательское поведение для типа компонентов в режиме конструктора. Конструкторы — это классы, реализующие логику, определяющую отображение или поведение типа во время конструирования. Все конструкторы реализуют интерфейс System.ComponentModel.Design.IDesigner. Конструкторы связываются с типами или членами типов при помощи атрибута DesignerAttribute. В режиме конструирования конструктор может выполнять задачи после создания связанного с ним компонента или элемента управления.
В режиме конструктора конструкторы могут выполнять самые различные типы задач. С помощью конструкторов можно:
Менять и расширять поведение или внешний вид компонентов и элементов управления в режиме конструктора.
Выполнять пользовательскую инициализацию компонентов в режиме конструктора.
Обращаться к службам времени конструирования, а также конфигурировать и создавать компоненты в проекте.
Добавлять пункты контекстного меню компонента.
Настраивать атрибуты, события и свойства, предоставляемые компонентом, с которым связан конструктор.
Конструкторы могут играть важную роль в размещении и конфигурации компонентов, а также в обеспечении адекватного функционирования компонента в режиме конструктора, которое в противном случае зависело бы от служб и интерфейсов, доступных лишь во время выполнения.
Для упрощения конфигурации в режиме конструктора некоторым элементам управления требуются визуальные подсказки. Например, объект System.Windows.Forms.Panel может не иметь видимой границы во время выполнения программы. Без границы панель нельзя увидеть на форме с тем же цветом фона. Поэтому конструктор объекта System.Windows.Forms.Panel рисует по периметру панели пунктирную линию.
Пространство имен System.ComponentModel.Design содержит основные интерфейсы, которые могут быть использованы разработчиком при построении поддержки времени конструирования.
В этом подразделе
Базовые классы конструктора
Описание классов и интерфейсов, которые можно использовать для построения пользовательского интерфейса времени конструирования.Фильтрация метаданных
Описание способов изменения набора свойств, атрибутов и событий, предоставляемых компонентом или элементом управления во время конструирования.Команды конструктора
Описание способов добавления команд контекстного меню для компонентов во время конструирования.Практическое руководство. Обращение к службам времени разработки
Описание способов получения доступа к службам времени конструирования и их использования.Практическое руководство. Реализация конструктора для элемента управления
Описание реализации конструктора для элемента управления поставщика расширения.Практическое руководство. Расширение внешнего вида и функциональности элементов управления в режиме конструктора
Описание создания пользовательского конструктора, изменяющего внешний вид и поведение элемента управления во время конструирования.Практическое руководство. Выполнение настраиваемой инициализации для элементов управления в режиме конструктора
Описание инициализации компонентов и элементов управления при их создании в среде конструирования.Практическое руководство. Создание и настройка компонентов в режиме конструктора
Описание программного создания компонентов в среде конструирования.Практическое руководство. Настройка атрибутов, событий и свойств компонента в режиме конструктора
Описание изменения интерфейса API компонента во время конструирования.Практическое руководство. Создание элемента управления Windows Forms, в котором используются преимущества функций, применяемых во время разработки
Описание создания пользовательского элемента управления и связанного с ним пользовательского конструктора.
Связанные подразделы
Программирование с использованием компонентов
Определение сущности компонента и общие сведения о программировании для платформы .NET Framework.Разработка пользовательских элементов управления Windows Forms в .NET Framework
Описание способов создания пользовательских элементов управления для Windows Forms.Разработка пользовательских серверных элементов управления ASP.NET
Описание способов создания пользовательских серверных элементов управления ASP.NET.