DesignSurface Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет пользовательский интерфейс для разработки компонентов.
public ref class DesignSurface : IDisposable, IServiceProvider
public class DesignSurface : IDisposable, IServiceProvider
[System.Security.SecurityCritical]
public class DesignSurface : IDisposable, IServiceProvider
type DesignSurface = class
interface IDisposable
interface IServiceProvider
[<System.Security.SecurityCritical>]
type DesignSurface = class
interface IDisposable
interface IServiceProvider
Public Class DesignSurface
Implements IDisposable, IServiceProvider
- Наследование
-
DesignSurface
- Атрибуты
- Реализации
Комментарии
Класс DesignSurface реализует то, что пользователь воспринимает как конструктор. DesignSurface — это пользовательский интерфейс, который пользователь управляет для изменения функций времени разработки. DesignSurface предоставляет полностью автономную область конструктора.
Класс DesignSurface может использоваться в качестве автономного конструктора или в сочетании с классом DesignSurfaceManager для предоставления общей реализации для приложения, в котором размещается несколько DesignSurface объектов.
Класс DesignSurface можно использовать сам по себе, или пользователь может получить от него новый класс и расширить поведение.
Класс DesignSurface автоматически предоставляет несколько служб времени разработки. Класс DesignSurface добавляет все свои службы в свой конструктор. Большинство этих служб можно переопределить, заменив их в защищенном свойстве ServiceContainer . Чтобы заменить службу, переопределите конструктор, вызовите base и внесите любые изменения с помощью защищенного ServiceContainer свойства. Все службы, добавленные в контейнер служб и реализующие IDisposable их, удаляются при удалении области конструктора. Набор заменяемых служб по умолчанию, предоставляемый классом DesignSurface , показан в следующей таблице.
Служба | Описание |
---|---|
IExtenderProviderService | Позволяет объектам, которые не являются частью коллекции компонентов контейнера, предоставлять собственные поставщики расширителя. |
IExtenderListService | Используется для TypeDescriptor получения списка поставщиков расширителя. С помощью этой службы поставщики расширителя могут жить за пределами контейнера. |
ITypeDescriptorFilterService | Предоставляет обработчики метаданных конструктора. Это основной интерфейс для фильтрации метаданных. |
ISelectionService | Предоставляет способ выбора компонентов в конструкторе. |
IReferenceService | Предоставляет способ получения имени для объектов, даже если эти объекты не расположены на сайте. |
DesignSurface | Предлагает саму поверхность проектирования в качестве услуги. |
DesignerOptionService | Предоставляет базовый класс для возврата и установки значений параметров конструктора. |
В следующей таблице показаны незаменяемые службы, предоставляемые по умолчанию.
Служба | Описание |
---|---|
IComponentChangeService | Вызывает события при внесении изменений в компоненты. |
IDesignerHost | Управляет доступом к типам, службам и транзакциям. Основной интерфейс для конструкторов. |
IContainer | Владеет набором разрабатываемых компонентов. У каждого конструктора есть , IContainer который владеет компонентами. |
IServiceContainer | Наследуется от IServiceProvider и предоставляет способ добавления и удаления служб из конструктора. |
Помимо этих служб, DesignSurface класс также предоставляет одну службу, доступную на сайте компонента. Эта служба уникальна для каждого компонента. В следующей таблице показаны службы, которые не могут быть заменены.
Служба | Описание |
---|---|
IDictionaryService | Универсальный словарь пар "ключ-значение", который можно использовать для хранения произвольных данных о компоненте. |
INestedContainer | Контейнер, позволяющий компоненту добавлять дополнительные дочерние компоненты в конструктор. Эти компоненты будут частью области конструктора, но не будут участвовать в сериализации. Это полезно, если вы хотите спроектировать элемент управления, который может предоставлять область в конструкторе, но вы не хотите, чтобы регион участвовал в сериализации. |
В дополнение к ISiteсайту также реализованы следующие интерфейсы.
Внимание!
Проверьте наличие этих интерфейсов, а не используйте неизбирательное приведение, так как другие реализации сайта могут не реализовывать их.
Служба | Описание |
---|---|
IServiceContainer | Предоставляет способ добраться до контейнера служб, относящихся к сайту. Например, IDictionaryService является службой для конкретного сайта. С помощью этой службы можно добавить дополнительные службы, относящиеся к сайту. |
Конструкторы
DesignSurface() |
Инициализирует новый экземпляр класса DesignSurface. |
DesignSurface(IServiceProvider) |
Инициализирует новый экземпляр класса DesignSurface. |
DesignSurface(IServiceProvider, Type) |
Инициализирует новый экземпляр класса DesignSurface. |
DesignSurface(Type) |
Инициализирует новый экземпляр класса DesignSurface. |
Свойства
ComponentContainer |
Получает реализацию интерфейса IContainer в области разработки. |
DtelLoading |
Получает значение, указывающее, загружается ли список ошибок времени разработки. |
IsLoaded |
Получает значение, указывающее, загружена ли область разработки в текущий момент. |
LoadErrors |
Возвращает коллекцию ошибок загрузки или пустую коллекцию. |
ServiceContainer |
Получает контейнер службы. |
View |
Получает представление для корневого конструктора. |
Методы
BeginLoad(DesignerLoader) |
Начинает процесс загрузки с заданным загрузчиком конструктора. |
BeginLoad(Type) |
Запускает процесс загрузки. |
CreateComponent(Type) |
Устаревшие..
Создает экземпляр компонента. |
CreateDesigner(IComponent, Boolean) |
Создает конструктор при добавлении компонента в контейнер. |
CreateInstance(Type) |
Создает экземпляр заданного типа. |
CreateNestedContainer(IComponent) |
Создает контейнер, пригодный для вложения элементов управления или компонентов. |
CreateNestedContainer(IComponent, String) |
Создает контейнер, пригодный для вложения элементов управления или компонентов. |
Dispose() |
Освобождает ресурсы, используемые объектом DesignSurface. |
Dispose(Boolean) |
Освобождает ресурсы, используемые объектом DesignSurface. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
Flush() |
Выполняет сериализацию изменений, внесенных в область разработки. |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetService(Type) |
Получает службу из контейнера служб. |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
OnLoaded(LoadedEventArgs) |
Вызывает событие Loaded. |
OnLoading(EventArgs) |
Вызывает событие Loading. |
OnUnloaded(EventArgs) |
Вызывает событие Unloaded. |
OnUnloading(EventArgs) |
Вызывает событие Unloading. |
OnViewActivate(EventArgs) |
Вызывает событие ViewActivated. |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
События
Disposed |
Происходит при удалении области разработки. |
Flushed |
Происходит при вызове метода Flush() объекта DesignSurface. |
Loaded |
Происходит по завершении загрузки конструктора. |
Loading |
Происходит непосредственно перед загрузкой конструктора. |
Unloaded |
Происходит после выгрузки конструктора. |
Unloading |
Происходит непосредственно перед выгрузки конструктора. |
ViewActivated |
Происходит при вызове метода Activate() для объекта IDesignerHost. |