2

BackColor の元のプロパティを使用するコンポーネントがあり、それをカスタム カテゴリにグループ化して表示したいと考えています。どうやってやるの?

私は独自の名前の BackgroundColor を定義しようとして機能しました (もちろん、owb カテゴリに挿入できました) が、元の BackColor 冗長プロパティを装飾で非表示にすると

[閲覧可能(False)]

背景の色を設定する機能が機能しなくなりました。[Browsable(False)] はデザイナーからプロパティを隠すだけだと思っていましたが、実際には後続の機能を完全に無効にします。

では、既存の元のプロパティを自分のカテゴリにグループ化するにはどうすればよいでしょうか?

どうもありがとう、

4

1 に答える 1

6

[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

これにより、プロパティ ウィンドウの分類されたビューは次のようになります。

ここに画像の説明を入力

于 2012-12-06T16:10:58.487 に答える