DesignerActionPropertyItem 类

定义

表示与从 DesignerActionList 派生的类中的属性相关的面板项。 此类不能被继承。

public ref class DesignerActionPropertyItem sealed : System::ComponentModel::Design::DesignerActionItem
public sealed class DesignerActionPropertyItem : System.ComponentModel.Design.DesignerActionItem
type DesignerActionPropertyItem = class
    inherit DesignerActionItem
Public NotInheritable Class DesignerActionPropertyItem
Inherits DesignerActionItem
继承
DesignerActionPropertyItem

示例

下面的代码示例演示如何创建 对象的集合 DesignerActionItem 。 有关实现智能标记的完整示例,请参阅 如何:将智能标记附加到 Windows 窗体组件

public override DesignerActionItemCollection GetSortedActionItems()
{
    DesignerActionItemCollection items = new DesignerActionItemCollection();

    //Define static section header entries.
    items.Add(new DesignerActionHeaderItem("Appearance"));
    items.Add(new DesignerActionHeaderItem("Information"));

    //Boolean property for locking color selections.
    items.Add(new DesignerActionPropertyItem("LockColors",
                     "Lock Colors", "Appearance",
                     "Locks the color properties."));
    if (!LockColors)
    {
        items.Add(new DesignerActionPropertyItem("BackColor",
                         "Back Color", "Appearance",
                         "Selects the background color."));
        items.Add(new DesignerActionPropertyItem("ForeColor",
                         "Fore Color", "Appearance",
                         "Selects the foreground color."));

        //This next method item is also added to the context menu 
        // (as a designer verb).
        items.Add(new DesignerActionMethodItem(this,
                         "InvertColors", "Invert Colors",
                         "Appearance",
                         "Inverts the fore and background colors.",
                          true));
    }
    items.Add(new DesignerActionPropertyItem("Text",
                     "Text String", "Appearance",
                     "Sets the display text."));

    //Create entries for static Information section.
    StringBuilder location = new StringBuilder("Location: ");
    location.Append(colLabel.Location);
    StringBuilder size = new StringBuilder("Size: ");
    size.Append(colLabel.Size);
    items.Add(new DesignerActionTextItem(location.ToString(),
                     "Information"));
    items.Add(new DesignerActionTextItem(size.ToString(),
                     "Information"));

    return items;
}
Public Overrides Function GetSortedActionItems() _
As DesignerActionItemCollection
    Dim items As New DesignerActionItemCollection()

    'Define static section header entries.
    items.Add(New DesignerActionHeaderItem("Appearance"))
    items.Add(New DesignerActionHeaderItem("Information"))

    'Boolean property for locking color selections.
    items.Add(New DesignerActionPropertyItem( _
    "LockColors", _
    "Lock Colors", _
    "Appearance", _
    "Locks the color properties."))

    If Not LockColors Then
        items.Add( _
        New DesignerActionPropertyItem( _
        "BackColor", _
        "Back Color", _
        "Appearance", _
        "Selects the background color."))

        items.Add( _
        New DesignerActionPropertyItem( _
        "ForeColor", _
        "Fore Color", _
        "Appearance", _
        "Selects the foreground color."))

        'This next method item is also added to the context menu 
        ' (as a designer verb).
        items.Add( _
        New DesignerActionMethodItem( _
        Me, _
        "InvertColors", _
        "Invert Colors", _
        "Appearance", _
        "Inverts the fore and background colors.", _
        True))
    End If
    items.Add( _
    New DesignerActionPropertyItem( _
    "Text", _
    "Text String", _
    "Appearance", _
    "Sets the display text."))

    'Create entries for static Information section.
    Dim location As New StringBuilder("Location: ")
    location.Append(colLabel.Location)
    Dim size As New StringBuilder("Size: ")
    size.Append(colLabel.Size)

    items.Add( _
    New DesignerActionTextItem( _
    location.ToString(), _
    "Information"))

    items.Add( _
    New DesignerActionTextItem( _
    size.ToString(), _
    "Information"))

    Return items
End Function

注解

DesignerActionPropertyItem 表示智能标记面板中的各个项。 每个项通常与类中的属性相关联,该属性派生自 类并由 DesignerActionList 组件作者提供。 通过属性名称(存储在 属性中 MemberName )维护关联。

通过调用 GetSortedActionItems 类的 DesignerActionList 方法,将各个面板项关联在一起以形成面板。

若要显示关联属性的值,该属性必须具有 get 访问器方法;若要允许编辑,该属性必须具有 set 访问器方法。 面板允许用户直接编辑属性项的方式取决于关联属性的数据类型的支持类型信息。 下表显示了可能的方案。

属性类型信息 属性项编辑用户界面 (UI)
具有关联的类型编辑器 (UITypeEditor) 将显示与基础属性关联的类型编辑器,用于编辑属性的值。
具有与已知类型关联的类型转换器 (TypeConverter) 将显示已知类型的类型编辑器,用于编辑属性的值。 例如,向 String 的类型转换器可能会显示 TextBox
布尔值 该项使用二进制 UI(如复选标记)显示。
以上都不是。 使用数据类型的 ToString 方法将项显示为不可编辑的文本字符串。

所有基本类型(如 System.Boolean)和常见的 .NET Framework 数据类型(如 System.String)都提供标准类型转换器和编辑器。 有关类型转换器的详细信息,请参阅 如何:实现类型转换器通用类型转换。 有关类型编辑器的详细信息,请参阅 如何:实现 UI 类型编辑器

构造函数

DesignerActionPropertyItem(String, String)

用指定的属性和显示名称初始化 DesignerActionPropertyItem 类的新实例。

DesignerActionPropertyItem(String, String, String)

使用指定的属性和类别名称以及显示文本,初始化 DesignerActionPropertyItem 类的新实例。

DesignerActionPropertyItem(String, String, String, String)

使用指定的属性名称和类别名称以及显示和说明文本,初始化 DesignerActionPropertyItem 类的新实例。

属性

AllowAssociate

获取或设置一个值,该值表示是否允许将此项放入具有相同 Category 属性值的一组项中。

(继承自 DesignerActionItem)
Category

获取某个项的组名。

(继承自 DesignerActionItem)
Description

获取项的补充文本。

(继承自 DesignerActionItem)
DisplayName

获取此项的文本。

(继承自 DesignerActionItem)
MemberName

获取与此项关联的属性的名称。

Properties

获取对一个集合的引用,该集合可用于存储程序员定义的键/值对。

(继承自 DesignerActionItem)
RelatedComponent

获取或设置将其项供给当前面板的组件。

ShowInSourceView

获取或设置指示此项目是否在源代码视图中显示的值。

(继承自 DesignerActionItem)

方法

Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetType()

获取当前实例的 Type

(继承自 Object)
MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
ToString()

返回表示当前对象的字符串。

(继承自 Object)

适用于

另请参阅