2010-12-15 17 views

答えて

2

CategoryAttributeと財産を飾ると、あなたはプロパティを表示したいカテゴリの名前を指定したカテゴリを使用してのグループにプロパティグリッドのプロパティを必要としています。カテゴリがまだ存在しない場合は、新しいカテゴリが自動的に作成されます。

あなたは、プロパティウィンドウでカスタムカテゴリ「ユーザー」の下に表示するプロパティUserNameを持っている場合たとえば、あなたはカスタムコントロールに次のコードを記述します。

[Category("Users")] 
public string UserName 
{ 
    get { return _userName } 
    set { _userName = value } 
} 

あなたの場合既にプロパティウィンドウに表示されている既存のカテゴリにプロパティを表示したい場合は、代わりにそのカテゴリの名前を指定する必要があります。例えば、私は、「データ」カテゴリに表示するUserNameプロパティを望んでいた場合、私は単純に上記のコードを変更します

[Category("Data")] 
public string UserName 
{ 
    get { return _userName } 
    set { _userName = value } 
} 
+0

は、お返事ありがとうございましたが、上記の溶液のカテゴリに私は​​グループにプロパティ – subbiah

+1

@subbiahを必要とする追加された:私は何か分かりません尋ねるそれ以上の説明はできますか? –

+0

申し訳ありません友人はちょうどあなたの返事を見ました、私は、グループ内のサブグループを作成する必要があります。フォントグループはプロパティグリッドにあります。そのグループ内では、名前、サイズ、ユニットが存在します – subbiah

1

「申し訳ありませんが友人はちょうど今、お返事を見て、私はサブを作成する必要がありますそのグループ内のフォントグループのようなグループ内のグループ、そのグループ内の名前、サイズ、単位などのプロパティが表示されます。

あなたのコメントには、サブプロパティがあります。 floatのような単純な型の場合、プロパティとして公開すると、PropertyGridはそれらを表示して編集する方法を既に知っています。ユーザー定義のクラスには、編集を許可せずにクラス名を表示するデフォルトの実装があります。あなたは、クラス内のプロパティを表示したい場合は、あなたのクラス定義の上にこれを追加する必要がありますプロパティグリッドを伝え

[TypeConverter(typeof(ExpandableObjectConverter))] 

あなたの財産は、その内部プロパティを表示するように拡張することができるようにします。 PropertyGridの上

たくさんのより多くの情報はここで見つけることができます: Getting the Most Out of the .NET Framework PropertyGrid Control

関連する問題