在设计器网格中单独分组我的自定义控件属性

时间:2011-07-12 13:23:18

标签: c# user-controls propertygrid

我正在使用用户控件。我已经创建了自己的控件属性。 现在我想在设计器网格中分别对自己的属性进行分组。

如何实现?

此致

1 个答案:

答案 0 :(得分:11)

看,here is your answer。换句话说,在属性上使用Category属性。

此外,这里还有一篇指向有用文章(Custom Design-time Control Features in Visual Studio .NET)的链接。这篇文章相当陈旧(2003年),但我找不到任何更新的官方文章。此外,我不知道您是否需要任何其他特定功能,但我想这应该是一个好的起点。

我试过这个并且对我有用:

public partial class UserControl1 : UserControl
{
    public UserControl1()
    {
        InitializeComponent();
    }

    [Category("MyOwn")]
    public String MyProperty { get; set; }
}

Example1

但请注意,当用户控件的设计者处于打开状态时,您无法看到自己的属性。仅当您的用户控件是另一个表单/控件的一部分并且被选中时,自定义属性才会在设计器的属性网格中可见。在设计控件时,您没有设计者访问此类属性。看看上面的照片。表单包含用户控件,然后选择用户控件。然后该属性在属性网格上可见。

另外,请确保在PropertyGrid中选择了Categorized: Categorized view