vb .net,将现有属性(例如backcolor)转换为自定义类别

use*_*147 2 .net vb.net

我有一个使用BackColor原始属性的组件,我想看到它与我的自定义类别分组.我怎样才能做到这一点?

我试图定义我自己的名为BackgroundColor并且工作(当然我能够插入到我的owb类别中),但当我隐藏原始BackColor冗余属性时带有装饰

[可浏览(假)]

功能设置我的背景颜色不再工作.我认为[Browsable(False)]只是隐藏了设计师的属性,但实际上会完全禁用后续功能.

那么,我怎样才能将一些现有的原始属性分组到我自己的类别中?

非常感谢,

Han*_*ant 7

我认为[Browsable(False)]只是隐藏了设计师的属性,但实际上会完全禁用后续功能.

您使用该属性隐藏了自己的属性.必须在属性声明中使用Shadows关键字告诉编译器您有意隐藏基类属性.锅炉板控制实现如下所示:

Imports System.ComponentModel

Public Class MyControl
    Inherits Control

    <Category("Aardvark")> _
    Public Shadows Property BackColor() As Color
        Get
            Return MyBase.BackColor
        End Get
        Set(ByVal value As Color)
            MyBase.BackColor = value
        End Set
    End Property

End Class
Run Code Online (Sandbox Code Playgroud)

这使得属性窗口的分类视图如下所示:

在此输入图像描述