2017-04-19 17 views
-2

私はユーザーコントロールを構築しています。以下はそのプロパティの例です。このプロパティは、いくつかのネストされたカテゴリ内に配置したいと思います。 Variable_TextプロパティはTiny Rickカテゴリに位置しています。この例C++/CLI Winformsユーザーコントロールプロパティ、ネストされたカテゴリ属性

public: 
    [Description("Text to display as Rick's Age"), Category("Tiny Rick")] 
    property String^ Rick_Age 
    { 
     String^ get() 
     { 
      return RicksAge_Label->Text; 
     } 
     void set(String^ newText) 
     { 
      RicksAge_Label->Text = newText; 
     } 
    } 

Tiny Rickカテゴリを別のカテゴリに表示するにはどうすればよいですか?

私は何らかの種類のプロパティの階層化された編成をしたいと思います。たとえば、次のように

  • カテゴリー:Special Properties
    • カテゴリー:Tiny Rick
      • プロパティ:Rick_Age
    • カテゴリー:Morty
      • プロパティ:Morty_Age
      • プロパティ:Morty_Size
  • カテゴリー:Other Properties
    • カテゴリー:Jerry
      • プロパティ:Jerry_Age
      • プロパティ:Jerry_Employed
    • カテゴリー:Courier Flaps
      • プロパティ:Item_to_Ship

EDIT-1: ここでは、ネストされた特性の一例です。新しく配置されたボタンコントロール(カスタムユーザーコントロールではない)のプロパティパネルです。私はこれがユーザーコントロールに同様の機能を適用する能力を証明していないことを理解しています。それは単に私が達成しようとしているものの良い例です。写真はXプロパティにアクセスするの進行を示す:

collapsed

Open1

Open2

Open3

EDIT-2: は、すべてのユーザーコントロールで何ができるか考えると、カスタムデザインの時間プロパティ(this projectを参照)、私は私の目標が達成可能であると信じる。この写真は前のリンクからのものです: enter image description here

+1

コントロールプロパティがネストされたカテゴリの概念をサポートしているかどうかはわかりません。 「どうやってこれをやるの?」と尋ねる前に、それは可能でしょうか?他のコントロール、ユーザー、または他の方法でそれを実行しているという例がありますか? –

+1

Win32/MFC interopを実行している場合を除き、GUI開発にはC++/CLIを使用しないでください。 C#が良い選択かもしれません。 –

+0

@DavidYaw大きな質問です。私は自分の回答を反映するために質問を更新しました。 –

答えて

1

私はこれが可能ではないと思います。 (Categoryは、左側のペインに「CategoryAttributeの422個のインスタンス化」までスクロールダウン(いくつかのプロパティで属性として使用されていることを言い換えれば、すべての回))CategoryAttributeクラスがインスタンス化されるすべての場所で.Net Reference Sourceてみる

  • (とにかくCategoryAttributeのために許可されません)単一のプロパティの属性Category複数のインスタンスはありません。
  • カテゴリテキストにカテゴリのあるカテゴリはありません(例:[Category("Special Properties\\Morty")]はありません)。

私はあなたが不運だと思います。

関連する問題