1

プロパティを表示するオブジェクトを指すプロパティ グリッドがあります。次のようにしてフィルタリングします。

            propertyGrid1.BrowsableAttributes = new System.ComponentModel.AttributeCollection(new Attribute[]
            {
                new CategoryAttribute("All")
            });

私のオブジェクトには Control オブジェクトのコレクションがあります。オブジェクトだけを表示すると、[Category("All")] を持たないすべてのプロパティが除外されます。ここまでは順調ですね。ただし、コレクション エディターに入ると、そのエディターには [Category("All")] でマークされていないプロパティが表示されます。これは望ましくありません。この問題を解決するにはどうすればよいですか?

4

1 に答える 1

3

それを行うには、collectioneditorをサブクラス化する必要があるのではないかと心配しています...

この記事では、コレクションエディタのフォームでpropertygridにアクセスする方法について説明します(記事の概要を参照CreateCollectionFormしてください)。

イベントハンドラーを登録する代わりに、そこで閲覧可能な属性の制限を設定できます...

于 2011-05-04T00:12:52.807 に答える