WebPartDesigner Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет визуальную поддержку во время разработки для элементов управления WebPart.
public ref class WebPartDesigner : System::Web::UI::Design::WebControls::WebParts::PartDesigner
public class WebPartDesigner : System.Web.UI.Design.WebControls.WebParts.PartDesigner
type WebPartDesigner = class
inherit PartDesigner
Public Class WebPartDesigner
Inherits PartDesigner
- Наследование
Примеры
В следующем примере кода показано взаимодействие между элементом WebPart управления и связанным с WebPartDesignerним . Элемент WebPart управления содержит Calendar элемент управления, из которого пользователь выбирает свой день рождения, Button элемент управления для отправки выбора и Label элемент управления для отображения сообщения о дне рождения пользователя. проверяет WebPartDesigner , что связанный элемент управления имеет ожидаемый тип, а затем настраивает отрисовку этого элемента управления во время разработки. Обратите внимание, что визуальные настройки конструктора видны только во время разработки, тогда как настройки связанного элемента управления видны как во время выполнения, так и во время разработки.
Все переопределенные в этом примере методы являются производными ControlDesigner от базового класса. Сведения о других доступных членах и их использовании см. в разделе System.Web.UI.Design.ControlDesigner.
using System;
using System.Security.Permissions;
using System.Web;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.Design.WebControls.WebParts;
using System.ComponentModel;
/// <summary>
/// BirthdayPart demonstrates some of the most
/// common overrides of members of the WebPart
/// class. BirthdayPartDesigner shows how to
/// customize the rendering of a custom WebPart
/// control.
/// </summary>
namespace Samples.AspNet.CS.Controls
{
[AspNetHostingPermission(SecurityAction.Demand,
Level=AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission(SecurityAction.InheritanceDemand,
Level=AspNetHostingPermissionLevel.Minimal)]
[Designer(typeof(BirthdayPartDesigner))]
public class BirthdayPart : WebPart
{
private DateTime birthDate;
Calendar input;
Label displayContent;
public BirthdayPart()
{
this.AllowClose = false;
this.Title = "Enter your birthday";
}
[
Personalizable(PersonalizationScope.User, true),
WebBrowsable()
]
public DateTime BirthDate
{
get { return birthDate; }
set { birthDate = value; }
}
// Set the appearance of the control at run time.
protected override void CreateChildControls()
{
Controls.Clear();
input = new Calendar();
this.Controls.Add(input);
Button update = new Button();
update.Text = "Submit";
update.Click += new EventHandler(this.submit_Click);
this.Controls.Add(update);
displayContent = new Label();
displayContent.BackColor =
System.Drawing.Color.LightBlue;
Literal br = new Literal();
br.Text = "<br />";
if ((this.birthDate.Day == DateTime.Now.Day)
&& (this.birthDate.Month == DateTime.Now.Month))
{
displayContent.Text = "Happy Birthday!";
this.Controls.Add(br);
this.Controls.Add(displayContent);
}
}
private void submit_Click(object sender, EventArgs e)
{
this.birthDate = input.SelectedDate;
}
}
public class BirthdayPartDesigner : WebPartDesigner
{
public override void Initialize(IComponent component)
{
// Verify that the associated control is a BirthdayPart.
if (!typeof(BirthdayPart).IsInstanceOfType(component))
{
throw new ArgumentException("The specified control is not of type 'BirthdayPart'", "component");
}
base.Initialize(component);
}
// Here is where you make customizations
// to design time appearance that will not
// be visible to the end user.
public override string GetDesignTimeHtml()
{
string designTimeHtml = null;
try
{
designTimeHtml = base.GetDesignTimeHtml();
string s = "<hr /><hr />I just added these lines to the"
+ " bottom of the control.<hr /><hr /></div>";
designTimeHtml = designTimeHtml.Replace("</div>", s);
}
catch (Exception ex)
{
designTimeHtml = GetErrorDesignTimeHtml(ex);
}
finally
{
// undo any changes in the try block
}
if ((designTimeHtml == null) || (designTimeHtml.Length == 0))
{
designTimeHtml = GetEmptyDesignTimeHtml();
}
return designTimeHtml;
}
// This method normally returns a blank string.
// Override to return a meaningful message.
protected override string GetEmptyDesignTimeHtml()
{
return CreatePlaceHolderDesignTimeHtml(
"<hr />If the page developer forgot to fill in a " +
"required property you could tell them here.<hr />");
}
// Add specific text to the generic error message.
protected override string GetErrorDesignTimeHtml(Exception e)
{
string s = "<hr />The control failed to render.";
return(s + e.Message + "<hr />");
}
}
}
Imports System.Security.Permissions
Imports System.Web
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.WebParts
Imports System.Web.UI.Design.WebControls.WebParts
Imports System.ComponentModel
' BirthdayPart demonstrates some of the most
' common overrides of members of the WebPart
' class. BirthdayPartDesigner shows how to
' customize the rendering of a custom WebPart
' control.
Namespace Samples.AspNet.VB.Controls
<AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
<AspNetHostingPermission(SecurityAction.InheritanceDemand, Level:=AspNetHostingPermissionLevel.Minimal)> _
<Designer(GetType(BirthdayPartDesigner))> _
Public Class BirthdayPart
Inherits WebPart
Private m_birthDate As DateTime
Private input As Calendar
Private displayContent As Label
Public Sub New()
Me.AllowClose = False
Me.Title = "Enter your birthday"
End Sub
<Personalizable(PersonalizationScope.User, True), WebBrowsable()> _
Public Property BirthDate() As DateTime
Get
Return m_birthDate
End Get
Set(value As DateTime)
m_birthDate = value
End Set
End Property
' Set the appearance of the control at run time.
Protected Overrides Sub CreateChildControls()
Controls.Clear()
input = New Calendar()
Me.Controls.Add(input)
Dim update As New Button()
update.Text = "Submit"
AddHandler update.Click, New EventHandler(AddressOf Me.submit_Click)
Me.Controls.Add(update)
displayContent = New Label()
displayContent.BackColor = System.Drawing.Color.LightBlue
Dim br As New Literal()
br.Text = "<br />"
If (Me.m_birthDate.Day = DateTime.Now.Day) AndAlso (Me.m_birthDate.Month = DateTime.Now.Month) Then
displayContent.Text = "Happy Birthday!"
Me.Controls.Add(br)
Me.Controls.Add(displayContent)
End If
End Sub
Private Sub submit_Click(sender As Object, e As EventArgs)
Me.m_birthDate = input.SelectedDate
End Sub
End Class
Public Class BirthdayPartDesigner
Inherits WebPartDesigner
Public Overrides Sub Initialize(component As IComponent)
' Verify that the associated control is a BirthdayPart.
If Not GetType(BirthdayPart).IsInstanceOfType(component) Then
Throw New ArgumentException("The specified control is not of type 'BirthdayPart'", "component")
End If
MyBase.Initialize(component)
End Sub
' Here is where you make customizations
' to design time appearance that will not
' be visible to the end user.
Public Overrides Function GetDesignTimeHtml() As String
Dim designTimeHtml As String = Nothing
Try
designTimeHtml = MyBase.GetDesignTimeHtml()
Dim s As String = "<hr /><hr />I just added these lines to the" & " bottom of the control.<hr /><hr /></div>"
designTimeHtml = designTimeHtml.Replace("</div>", s)
Catch ex As Exception
designTimeHtml = GetErrorDesignTimeHtml(ex)
' undo any changes in the try block
Finally
End Try
If (designTimeHtml Is Nothing) OrElse (designTimeHtml.Length = 0) Then
designTimeHtml = GetEmptyDesignTimeHtml()
End If
Return designTimeHtml
End Function
' This method normally returns a blank string.
' Override to return a meaningful message.
Protected Overrides Function GetEmptyDesignTimeHtml() As String
Return CreatePlaceHolderDesignTimeHtml("<hr />If the page developer forgot to fill in a " & "required property you could tell them here.<hr />")
End Function
' Add specific text to the generic error message.
Protected Overrides Function GetErrorDesignTimeHtml(e As Exception) As String
Dim s As String = "<hr />The control failed to render."
Return (s & e.Message & "<hr />")
End Function
End Class
End Namespace
Комментарии
Класс WebPartDesigner предоставляет визуальное представление элементов WebPart управления во время разработки. Он является производным PartDesigner от класса и добавляет проверку, чтобы убедиться, что связанный элемент управления является элементом управления или производным типом WebPart .
WebPartDesigner наследует свойство от родительского UsePreviewControl элемента, которому всегда присваивается значение true
. Это приводит к тому, что среда визуального проектирования создает View элемент управления для хранения временной WebPart копии в области конструктора. Затем эта копия сохраняется в разметке. Если переопределить UsePreviewControl свойство для возврата false
, среда визуального проектирования создает разметку непосредственно из фактического WebPart элемента управления.
Конструкторы веб-частей обычно действуют так же, как обычные конструкторы элементов управления; Основные методы для задания внешнего вида во время разработки являются производными ControlDesigner от класса . В частности, можно переопределить GetDesignTimeHtml метод , чтобы изменить разметку времени разработки, связанную с элементом управления . Вы также можете переопределить GetErrorDesignTimeHtml методы и для GetEmptyDesignTimeHtml обработки ошибок и пустых строк (""), соответственно.
Конструкторы
WebPartDesigner() |
Инициализирует новый экземпляр класса WebPartDesigner. |
Свойства
ActionLists |
Получает коллекцию списков действий для конструктора элементов управления. (Унаследовано от ControlDesigner) |
AllowResize |
Получает значение, указывающее, можно ли изменять размер элемента управления в среде времени разработки. (Унаследовано от ControlDesigner) |
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) |
HidePropertiesInTemplateMode |
Получает значение, указывающее, скрыты ли свойства сопоставленного элемента управления, когда он находится в режиме шаблона. (Унаследовано от ControlDesigner) |
ID |
Получает или задает строку идентификатора элемента управления. (Унаследовано от ControlDesigner) |
InheritanceAttribute |
Возвращает атрибут, обозначающий тип наследования связанного компонента. (Унаследовано от ComponentDesigner) |
Inherited |
Возвращает значение, определяющее, наследуется ли этот компонент или нет. (Унаследовано от ComponentDesigner) |
InTemplateMode |
получает значение, указывающее, находится ли элемент управления в режиме просмотра или редактирования шаблона в основном приложении разработки. Свойство InTemplateMode доступно только для чтения. (Унаследовано от ControlDesigner) |
IsDirty |
Устаревшие..
Получает или задает значение, указывающее наличие отметки об изменении серверного веб-элемента управления. (Унаследовано от ControlDesigner) |
ParentComponent |
Возвращает родительский компонент этого конструктора. (Унаследовано от ComponentDesigner) |
ReadOnly |
Устаревшие..
Получает или задает значение, указывающее, доступны ли только для чтения свойства элемента управления во время разработки. (Унаследовано от ControlDesigner) |
RootDesigner |
Получает конструктор элементов управления для страницы веб-форм, содержащей сопоставленный элемент управления. (Унаследовано от ControlDesigner) |
SetTextualDefaultProperty |
Предоставляет визуальную поддержку во время разработки для элементов управления WebPart. (Унаследовано от ComponentDesigner) |
ShadowProperties |
Возвращает коллекцию значений свойств, переопределяющих параметры пользователя. (Унаследовано от ComponentDesigner) |
ShouldCodeSerialize |
Устаревшие..
Получает или задает значение, показывающее, создавать ли объявление поля для элемента управления в файле кода программной части для текущего документа разработки во время сериализации. (Унаследовано от HtmlControlDesigner) |
Tag |
Получает объект, представляющей элемент разметки HTML для сопоставленного элемента управления. (Унаследовано от ControlDesigner) |
TemplateGroups |
Получает коллекцию групп шаблонов, каждая из которых содержит одно или несколько определений шаблонов. (Унаследовано от ControlDesigner) |
UsePreviewControl |
Получает значение, указывающее, должен ли конструктор использовать временную копию вместо фактического элемента управления, связанного с конструктором, для создания разметки во время разработки. (Унаследовано от PartDesigner) |
Verbs |
Возвращает команды в режиме конструктора, поддерживаемые компонентом, связанным с конструктором. (Унаследовано от ComponentDesigner) |
ViewControl |
Получает или задает серверный веб-элемент управления, который может быть использован для предварительного просмотра разметки HTML времени разработки. (Унаследовано от ControlDesigner) |
ViewControlCreated |
Получает или задает значение, указывающее, создан ли элемент управления |
Visible |
Получает значение, указывающее, является ли элемент управления видимым во время разработки. (Унаследовано от ControlDesigner) |
Методы
CreateChildControls() |
Создает дочерние элементы управления этого элемента управления CompositeControl. (Унаследовано от CompositeControlDesigner) |
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) |
GetDesignTimeHtml() |
Получает HTML-код, используемый для представления элемента управления во время разработки. (Унаследовано от CompositeControlDesigner) |
GetDesignTimeHtml(DesignerRegionCollection) |
Получает разметку HTML для отображения элемента управления и заполняет коллекцию текущими областями конструктора элемента управления. (Унаследовано от ControlDesigner) |
GetEditableDesignerRegionContent(EditableDesignerRegion) |
Возвращает содержимое редактируемой области представления времени разработки связанного элемента управления. (Унаследовано от ControlDesigner) |
GetEmptyDesignTimeHtml() |
Извлекает разметку HTML, используемую для представления северного веб-элемента управления во время разработки, у которого не будет визуального представления во время выполнения. (Унаследовано от ControlDesigner) |
GetErrorDesignTimeHtml(Exception) |
Получает HTML-разметку, которая предоставляет сведения об указанном исключении. (Унаследовано от ControlDesigner) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetPersistenceContent() |
Получает сохраненную внутреннюю разметку HTML элемента управления во время разработки. (Унаследовано от ControlDesigner) |
GetPersistInnerHtml() |
Устаревшие..
Получает сохраненную внутреннюю разметку HTML элемента управления. (Унаследовано от ControlDesigner) |
GetService(Type) |
Пытается извлечь службу заданного типа с узла режима разработки компонента конструктора. (Унаследовано от ComponentDesigner) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
GetViewRendering() |
Получает объект, содержащий разметку времени разработки для содержимого и областей сопоставленного элемента управления. (Унаследовано от ControlDesigner) |
Initialize(IComponent) |
Привязывает конструктор к элементу управления и проверяет, имеет ли элемент управления тип WebPart. |
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 является |
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) |
Указывает содержимое редактируемой области элемента управления во время разработки. (Унаследовано от ControlDesigner) |
SetRegionContent(EditableDesignerRegion, String) |
Указывает содержимое редактируемой области в представлении времени разработки элемента управления. (Унаследовано от ControlDesigner) |
SetViewFlags(ViewFlags, Boolean) |
Назначает указанное битовое перечисление ViewFlags указанному значению флага. (Унаследовано от ControlDesigner) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
UpdateDesignTimeHtml() |
Обновляет разметку HTML времени разработки для сопоставленного серверного веб-элемента управления посредством вызова метода GetDesignTimeHtml. (Унаследовано от ControlDesigner) |