Добавить категории в .NET PropertyGrid - PullRequest
3 голосов
/ 24 января 2011

Возможно ли добавлять категории в .NET PropertyGrid только путем аннотирования моего класса данных такими атрибутами, как CategoryAttribute?

Ответы [ 4 ]

3 голосов
/ 24 января 2011

Вы можете использовать CategoryAttribute. В документации говорится:

Для любого имени можно создать новую категорию, указав имя категории в конструкторе для CategoryAttribute.

Пример:

[
Category("MyCategory"),
Description("Specifies something")
]
public string Something { //... }
1 голос
/ 25 января 2011

Делать это с ICustomTypeDescriptor и вашим собственным классом PropertyDescriptor довольно легко и не требует большого количества кода.

В этой статье Настраиваемое отображение данных коллекции в PropertyGrid подробно описывается, как это сделать.Для добавления категорий вам также необходимо переопределить свойство Category в вашем классе PropertyDescriptor.

0 голосов
/ 24 января 2011
0 голосов
/ 24 января 2011

Похоже, вы пытаетесь неправильно использовать PropertyGrid для отображения нескольких объектов.

Это можно сделать, написав класс CustomTypeDescriptor, который возвращает PropertyDescriptors для каждой строки, которую вы хотите видеть в сетке, с соответствующими CategoryAttribute с. Это займет значительный объем работы, но это возможно.

...