Поделиться через


ContainerControlDesigner Класс

Определение

Предоставляет функциональные возможности конструктора для элементов управления, содержащих дочерние элементы управления или свойства, которые могут быть изменены во время разработки.

public ref class ContainerControlDesigner : System::Web::UI::Design::ControlDesigner
public class ContainerControlDesigner : System.Web.UI.Design.ControlDesigner
type ContainerControlDesigner = class
    inherit ControlDesigner
Public Class ContainerControlDesigner
Inherits ControlDesigner
Наследование
Производный

Примеры

В следующем примере кода показано, как наследовать класс конструктора ContainerControlDesigner от класса . В примере определяется простой элемент управления, производный CompositeControl от класса , а затем определяется связанный конструктор, производный ContainerControlDesigner от класса . Производный класс конструктора FrameCaption переопределяет свойства и FrameStyle для настройки кадра, который находится вокруг редактируемой области элемента управления в области конструктора.

using System;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Drawing;
using System.Web.UI;
using System.Web.UI.Design;
using System.Web.UI.Design.WebControls;
using System.Web.UI.WebControls;

namespace ControlDesignerSamples.CS
{

    // Define a simple composite control, derived from the 
    // System.Web.UI.WebControls.CompositeControl class.
    [
        Designer(typeof(SimpleContainerControlDesigner)) , 
        ParseChildren(false)
    ]
    public class SimpleContainerControl : CompositeControl
    {
    }


    // Define the designer for the simple composite control.
    // The designer derives from System.Web.UI.Design.ContainerControlDesigner.
    // The designer defines the style and caption for frame around the 
    // editable region in the design surface.
    public class SimpleContainerControlDesigner : ContainerControlDesigner
    {
        private Style _style = null;

        // Define the caption text for the frame in the design surface.
        public override string FrameCaption
        {
            get
            {
                return "= My simple container control =";
            }
        }

        // Define the style of the frame around the control in the design surface.
        public override Style FrameStyle
        {
            get
            {
                if (_style == null)
                {
                    _style = new Style();
                    _style.Font.Name = "Verdana";
                    _style.Font.Size = new FontUnit("XSmall");
                    _style.BackColor = Color.LavenderBlush;
                    _style.ForeColor = Color.DarkBlue;
                }

                return _style;
            }
        }
    }
}

Imports System.ComponentModel
Imports System.ComponentModel.Design
Imports System.Collections
Imports System.Drawing
Imports System.Web.UI
Imports System.Web.UI.Design
Imports System.Web.UI.Design.WebControls
Imports System.Web.UI.WebControls

Namespace ControlDesignerSamples.VB


    ' Define a simple composite control, derived from the 
    ' System.Web.UI.WebControls.CompositeControl class.

    <Designer(GetType(SimpleContainerControlDesigner)), _
     ParseChildren(False)> _
    Public Class SimpleContainerControl
        Inherits CompositeControl

    End Class


    ' Define the designer for the simple composite control.
    ' The designer derives from System.Web.UI.Design.ContainerControlDesigner.
    ' The designer defines the style and caption for the frame around the 
    ' editable region of the control in the design surface.
    Public Class SimpleContainerControlDesigner
        Inherits ContainerControlDesigner

        Private _style As Style = Nothing

        ' Define the caption text for the frame in the design surface.
        Public Overrides ReadOnly Property FrameCaption() As String
            Get
                Return "- My simple container control -"
            End Get
        End Property


        ' Define the style of the frame around the control in the design surface.
        Public Overrides ReadOnly Property FrameStyle() As Style
            Get
                If _style Is Nothing Then

                    _style = New Style()
                    _style.Font.Name = "Verdana"
                    _style.Font.Size = New FontUnit("XSmall")
                    _style.BackColor = Color.LavenderBlush
                    _style.ForeColor = Color.DarkBlue
                End If

                Return _style
            End Get
        End Property


    End Class

End Namespace

Комментарии

Класс ContainerControlDesigner предоставляет базовый класс конструктора для элементов управления, которые можно изменить в области конструктора. Сюда входят элементы управления, содержащие дочерние элементы управления или редактируемые внутренние свойства. предоставляет ContainerControlDesigner одну область в кадре для представления элемента управления и автоматически обрабатывает отрисовку элемента управления во время разработки.

Примените ParseChildrenAttribute атрибут к связанному элементу управления, чтобы определить поведение во время разработки ContainerControlDesigner. Примените ParseChildrenAttribute параметры к соответствующему элементу управления следующим образом:

  • false значение , чтобы указать, что ContainerControlDesigner представляет содержимое редактируемой области конструктора в качестве дочерних элементов управления.

  • true , чтобы указать, что ContainerControlDesigner представляет содержимое редактируемой области конструктора в качестве редактируемых внутренних свойств элемента управления.

Разработчики элементов управления могут создавать и расширять пользовательский конструктор от одного из нескольких базовых конструкторов в зависимости от типа разрабатываемого элемента управления, как указано в следующем списке:

  • Элементы управления, которые позволяют добавлять дочерние элементы управления во время разработки, могут быть производными ContainerControlDesigner от класса . Например, класс является производным PanelContainerDesignerContainerControlDesigner от класса и представляет элемент Panel управления в области конструктора.

  • Элементы управления, которые имеют один или несколько дочерних элементов управления, а также могут иметь редактируемую область конструктора, в которую можно добавить элементы управления во время разработки CompositeControlDesigner , могут быть производными от класса .

  • Элементы управления, требующие пользовательской обработки во время разработки, могут быть производными от базового ControlDesigner класса.

Примечание

Класс ContainerControlDesigner заменяет устаревший ReadWriteControlDesigner класс.

Используйте атрибут , DesignerAttribute чтобы связать класс пользовательского конструктора с реализацией пользовательского элемента управления. Подробные сведения об использовании конструкторов элементов управления с пользовательскими элементами управления см. в разделе Пошаговое руководство. Создание базового конструктора элементов управления для серверного веб-элемента управления.

Конструкторы

ContainerControlDesigner()

Инициализирует новый экземпляр класса ContainerControlDesigner.

Свойства

ActionLists

Получает коллекцию списков действий для конструктора элементов управления.

(Унаследовано от ControlDesigner)
AllowResize

Возвращает значение, показывающее, можно ли изменить размеры элемента управления во время разработки.

AssociatedComponents

Получает коллекцию компонентов, сопоставленных компоненту, который управляется конструктором.

(Унаследовано от ComponentDesigner)
AutoFormats

Получает коллекцию предварительно определенных схем автоматического форматирования, которые будут отображаться в диалоговом окне Автоформат для связанного элемента управления во время разработки.

(Унаследовано от ControlDesigner)
Behavior
Устаревшие..

Получает или задает поведение DHTML, связанное с конструктором.

(Унаследовано от HtmlControlDesigner)
Component

Возвращает основной компонент, создаваемый данным конструктором.

(Унаследовано от ComponentDesigner)
DataBindings

Получает коллекцию привязок данных для текущего элемента управления.

(Унаследовано от HtmlControlDesigner)
DataBindingsEnabled

Получает значение, указывающее, поддерживается ли привязка данных областью, содержащей элемент управления.

(Унаследовано от ControlDesigner)
DesignerState

Получает объект, используемый для сохранения данных сопоставленного элемента управления во время разработки.

(Унаследовано от ControlDesigner)
DesignTimeElement
Устаревшие..

Возвращает объект времени разработки, представляющий элемент управления, сопоставленный с объектом HtmlControlDesigner в области разработки.

(Унаследовано от HtmlControlDesigner)
DesignTimeElementView
Устаревшие..

Получает объект элемента управления представлением для конструктора элементов управления.

(Унаследовано от ControlDesigner)
DesignTimeHtmlRequiresLoadComplete
Устаревшие..

Получает значение, указывающее, должна ли быть завершена загрузка основным приложением разработки до вызова метода GetDesignTimeHtml.

(Унаследовано от ControlDesigner)
Expressions

Возвращает привязки выражений для текущего элемента управления во время разработки.

(Унаследовано от HtmlControlDesigner)
FrameCaption

Возвращает заголовок, отображаемый для элемента управления во время разработки.

FrameStyle

Получает стиль, применяемый к фрейму элемента управления во время разработки.

HidePropertiesInTemplateMode

Получает значение, указывающее, скрыты ли свойства сопоставленного элемента управления, когда он находится в режиме шаблона.

(Унаследовано от ControlDesigner)
ID

Получает или задает строку идентификатора элемента управления.

(Унаследовано от ControlDesigner)
InheritanceAttribute

Возвращает атрибут, обозначающий тип наследования связанного компонента.

(Унаследовано от ComponentDesigner)
Inherited

Возвращает значение, определяющее, наследуется ли этот компонент или нет.

(Унаследовано от ComponentDesigner)
InTemplateMode

получает значение, указывающее, находится ли элемент управления в режиме просмотра или редактирования шаблона в основном приложении разработки. Свойство InTemplateMode доступно только для чтения.

(Унаследовано от ControlDesigner)
IsDirty
Устаревшие..

Получает или задает значение, указывающее наличие отметки об изменении серверного веб-элемента управления.

(Унаследовано от ControlDesigner)
NoWrap

Получает значение, которое определяет, следует ли использовать атрибут HTML nowrap в таблицах.

ParentComponent

Возвращает родительский компонент этого конструктора.

(Унаследовано от ComponentDesigner)
ReadOnly
Устаревшие..

Получает или задает значение, указывающее, доступны ли только для чтения свойства элемента управления во время разработки.

(Унаследовано от ControlDesigner)
RootDesigner

Получает конструктор элементов управления для страницы веб-форм, содержащей сопоставленный элемент управления.

(Унаследовано от ControlDesigner)
SetTextualDefaultProperty

Предоставляет функциональные возможности конструктора для элементов управления, содержащих дочерние элементы управления или свойства, которые могут быть изменены во время разработки.

(Унаследовано от ComponentDesigner)
ShadowProperties

Возвращает коллекцию значений свойств, переопределяющих параметры пользователя.

(Унаследовано от ComponentDesigner)
ShouldCodeSerialize
Устаревшие..

Получает или задает значение, показывающее, создавать ли объявление поля для элемента управления в файле кода программной части для текущего документа разработки во время сериализации.

(Унаследовано от HtmlControlDesigner)
Tag

Получает объект, представляющей элемент разметки HTML для сопоставленного элемента управления.

(Унаследовано от ControlDesigner)
TemplateGroups

Получает коллекцию групп шаблонов, каждая из которых содержит одно или несколько определений шаблонов.

(Унаследовано от ControlDesigner)
UsePreviewControl

Получает значение, указывающее, использует ли конструктор элементов управления временный элемент управления "Предварительный просмотр" для создания разметки HTML во время разработки.

(Унаследовано от ControlDesigner)
Verbs

Возвращает команды в режиме конструктора, поддерживаемые компонентом, связанным с конструктором.

(Унаследовано от ComponentDesigner)
ViewControl

Получает или задает серверный веб-элемент управления, который может быть использован для предварительного просмотра разметки HTML времени разработки.

(Унаследовано от ControlDesigner)
ViewControlCreated

Получает или задает значение, указывающее, создан ли элемент управления View для отображения в рабочей области конструирования.

(Унаследовано от ControlDesigner)
Visible

Получает значение, указывающее, является ли элемент управления видимым во время разработки.

(Унаследовано от ControlDesigner)

Методы

AddDesignTimeCssAttributes(IDictionary)

Добавляет атрибуты стиля для элемента управления во время разработки.

CreateErrorDesignTimeHtml(String)

Создает разметку HTML для отображения указанного сообщения об ошибке во время разработки.

(Унаследовано от ControlDesigner)
CreateErrorDesignTimeHtml(String, Exception)

Создает разметку HTML для отображения во время разработки указанного сообщения об ошибке, вызванной исключением.

(Унаследовано от ControlDesigner)
CreatePlaceHolderDesignTimeHtml()

Предоставляет простое прямоугольное представление местозаполнителя, в котором выводится тип и идентификатор элемента управления.

(Унаследовано от ControlDesigner)
CreatePlaceHolderDesignTimeHtml(String)

Предоставляет простое прямоугольное представление местозаполнителя, в котором выводится тип и идентификатор элемента управления, а также дополнительно указанные инструкции или сведения.

(Унаследовано от ControlDesigner)
CreateViewControl()

Возвращает копию связанного элемента управления для просмотра или отрисовки в рабочей области конструирования.

(Унаследовано от ControlDesigner)
Dispose()

Освобождает все ресурсы, занятые модулем ComponentDesigner.

(Унаследовано от ComponentDesigner)
Dispose(Boolean)

Освобождает неуправляемые (а при необходимости и управляемые) ресурсы, используемые объектом HtmlControlDesigner.

(Унаследовано от HtmlControlDesigner)
DoDefaultAction()

Создает в файле с исходным кодом подпись метода для события по умолчанию для компонента и устанавливает курсор в позицию, где была создана эта подпись.

(Унаследовано от ComponentDesigner)
Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetBounds()

Получает координаты прямоугольника, представляющего границы элемента управления, когда он отображается в рабочей области конструирования.

(Унаследовано от ControlDesigner)
GetDesignTimeCssAttributes()

Возвращает коллекцию атрибутов стиля для элемента управления во время разработки.

GetDesignTimeHtml()

Получает HTML-разметку, используемую для представления элемента управления во время разработки.

(Унаследовано от ControlDesigner)
GetDesignTimeHtml(DesignerRegionCollection)

Возвращает HTML-разметку, используемую для отображения элемента управления во время разработки.

GetEditableDesignerRegionContent(EditableDesignerRegion)

Возвращает содержимое редактируемой области элемента управления во время разработки.

GetEmptyDesignTimeHtml()

Извлекает разметку HTML, используемую для представления северного веб-элемента управления во время разработки, у которого не будет визуального представления во время выполнения.

(Унаследовано от ControlDesigner)
GetErrorDesignTimeHtml(Exception)

Получает HTML-разметку, которая предоставляет сведения об указанном исключении.

(Унаследовано от ControlDesigner)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetPersistenceContent()

Возвращает сохраняемое содержимое элемента управления на этапе разработки.

GetPersistInnerHtml()
Устаревшие..

Получает сохраненную внутреннюю разметку HTML элемента управления.

(Унаследовано от ControlDesigner)
GetService(Type)

Пытается извлечь службу заданного типа с узла режима разработки компонента конструктора.

(Унаследовано от ComponentDesigner)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
GetViewRendering()

Получает объект, содержащий разметку времени разработки для содержимого и областей сопоставленного элемента управления.

(Унаследовано от ControlDesigner)
Initialize(IComponent)

Инициализирует конструктор элементов управления и загружает указанный компонент.

(Унаследовано от ControlDesigner)
InitializeExistingComponent(IDictionary)

Выполняет повторную инициализацию существующего компонента.

(Унаследовано от ComponentDesigner)
InitializeNewComponent(IDictionary)

Инициализирует только что созданный компонент.

(Унаследовано от ComponentDesigner)
InitializeNonDefault()
Устаревшие..
Устаревшие..

Инициализирует параметры импортированного компонента, параметры которого уже были инициализированы с использованием параметров, отличных от заданных по умолчанию.

(Унаследовано от ComponentDesigner)
Invalidate()

Делает недействительной целую область элемента управления, отображаемого в рабочей области конструирования, и сигнализирует конструктору элементов управления о необходимости перерисовки элемента управления.

(Унаследовано от ControlDesigner)
Invalidate(Rectangle)

Делает недействительной указанную область элемента управления, отображаемого в рабочей области конструирования, и сигнализирует конструктору элемента управления о необходимости перерисовки элемента управления.

(Унаследовано от ControlDesigner)
InvokeGetInheritanceAttribute(ComponentDesigner)

Возвращает атрибут InheritanceAttribute заданного объекта ComponentDesigner.

(Унаследовано от ComponentDesigner)
IsPropertyBound(String)
Устаревшие..

Получает значение, указывающее, является ли указанное свойство сопоставленного элемента управления привязанным к данным.

(Унаследовано от ControlDesigner)
Localize(IDesignTimeResourceWriter)

Использует предоставленный модуль записи ресурсов для сохранения локализуемых свойств сопоставленного элемента управления в ресурсе основного приложения разработки.

(Унаследовано от ControlDesigner)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
OnAutoFormatApplied(DesignerAutoFormat)

Вызывается, когда предварительно определенная схема автоматического форматирования применяется к сопоставленному элементу управления.

(Унаследовано от ControlDesigner)
OnBehaviorAttached()

Вызывается, когда конструктор элемента управления вложен в объект Behavior.

(Унаследовано от ControlDesigner)
OnBehaviorDetaching()
Устаревшие..

Вызывается при разрыве связи поведения и элемента.

(Унаследовано от HtmlControlDesigner)
OnBindingsCollectionChanged(String)
Устаревшие..

Вызывается при изменении коллекции привязки данных.

(Унаследовано от ControlDesigner)
OnClick(DesignerRegionMouseEventArgs)

Вызывается основным приложением разработки, когда пользователь во время разработки щелкает сопоставленный элемент управления.

(Унаследовано от ControlDesigner)
OnComponentChanged(Object, ComponentChangedEventArgs)

Вызывается при изменении сопоставленного элемента управления.

(Унаследовано от ControlDesigner)
OnComponentChanging(Object, ComponentChangingEventArgs)

Предоставляет метод, обрабатывающий событие ComponentChanging для сопоставленного элемента управления.

(Унаследовано от ControlDesigner)
OnControlResize()
Устаревшие..

Вызывается, когда изменяется размер сопоставленного серверного веб-элемента управления в основном приложении разработки во время разработки.

(Унаследовано от ControlDesigner)
OnPaint(PaintEventArgs)

Вызывается, когда конструктор элементов управления прорисовывает сопоставленный элемент управления в рабочей области конструирования, если значением поля CustomPaint является true.

(Унаследовано от ControlDesigner)
OnSetComponentDefaults()
Устаревшие..
Устаревшие..

Задает для компонента свойства по умолчанию.

(Унаследовано от ComponentDesigner)
OnSetParent()

Предоставляет способ выполнения дополнительной обработки, когда сопоставленный элемент управления сопоставляется с родительским элементом управления.

(Унаследовано от HtmlControlDesigner)
PostFilterAttributes(IDictionary)

Позволяет конструктору изменять или удалять элементы из набора атрибутов, предоставленных через класс TypeDescriptor.

(Унаследовано от ComponentDesigner)
PostFilterEvents(IDictionary)

Позволяет конструктору изменять или удалять элементы из набора событий, предоставленных через класс TypeDescriptor.

(Унаследовано от ComponentDesigner)
PostFilterProperties(IDictionary)

Позволяет конструктору изменять или удалять элементы из набора свойств, предоставленных с использованием класса TypeDescriptor.

(Унаследовано от ComponentDesigner)
PreFilterAttributes(IDictionary)

Позволяет конструктору добавлять элементы к набору атрибутов, предоставленному с использованием класса TypeDescriptor.

(Унаследовано от ComponentDesigner)
PreFilterEvents(IDictionary)

Определяет список событий, предоставляемых во время разработки для объекта TypeDescriptor компонента.

(Унаследовано от HtmlControlDesigner)
PreFilterProperties(IDictionary)

Добавляет свойства в сетку свойств в основном приложении разработки во время разработки или удаляет их из этой сетки либо предоставляет новые свойства времени разработки, которые могут соответствовать свойствам сопоставленного элемента управления.

(Унаследовано от ControlDesigner)
RaiseComponentChanged(MemberDescriptor, Object, Object)

Уведомляет службу IComponentChangeService о том, что данный компонент был изменен.

(Унаследовано от ComponentDesigner)
RaiseComponentChanging(MemberDescriptor)

Уведомляет службу IComponentChangeService о том, что компонент будет изменен.

(Унаследовано от ComponentDesigner)
RaiseResizeEvent()
Устаревшие..

Вызывает событие OnControlResize().

(Унаследовано от ControlDesigner)
RegisterClone(Object, Object)

Регистрирует внутренние данные в клонированном элементе управления.

(Унаследовано от ControlDesigner)
SetEditableDesignerRegionContent(EditableDesignerRegion, String)

Устанавливает содержимое редактируемой области элемента управления во время разработки.

SetRegionContent(EditableDesignerRegion, String)

Указывает содержимое редактируемой области в представлении времени разработки элемента управления.

(Унаследовано от ControlDesigner)
SetViewFlags(ViewFlags, Boolean)

Назначает указанное битовое перечисление ViewFlags указанному значению флага.

(Унаследовано от ControlDesigner)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)
UpdateDesignTimeHtml()

Обновляет разметку HTML времени разработки для сопоставленного серверного веб-элемента управления посредством вызова метода GetDesignTimeHtml.

(Унаследовано от ControlDesigner)

Явные реализации интерфейса

IDesignerFilter.PostFilterAttributes(IDictionary)

Описание этого элемента содержится в методе PostFilterAttributes(IDictionary).

(Унаследовано от ComponentDesigner)
IDesignerFilter.PostFilterEvents(IDictionary)

Описание этого элемента содержится в методе PostFilterEvents(IDictionary).

(Унаследовано от ComponentDesigner)
IDesignerFilter.PostFilterProperties(IDictionary)

Описание этого элемента содержится в методе PostFilterProperties(IDictionary).

(Унаследовано от ComponentDesigner)
IDesignerFilter.PreFilterAttributes(IDictionary)

Описание этого элемента содержится в методе PreFilterAttributes(IDictionary).

(Унаследовано от ComponentDesigner)
IDesignerFilter.PreFilterEvents(IDictionary)

Описание этого элемента содержится в методе PreFilterEvents(IDictionary).

(Унаследовано от ComponentDesigner)
IDesignerFilter.PreFilterProperties(IDictionary)

Описание этого элемента содержится в методе PreFilterProperties(IDictionary).

(Унаследовано от ComponentDesigner)
ITreeDesigner.Children

Описание этого элемента см. в свойстве Children.

(Унаследовано от ComponentDesigner)
ITreeDesigner.Parent

Описание этого элемента см. в свойстве Parent.

(Унаследовано от ComponentDesigner)

Применяется к

См. также раздел