Я пытаюсь найти правильный способ сделать это.
У меня есть приложение WinForms, которое использует PropertyGrid в качестве одного из элементов управления; Я использую свойство .SelectedObject, чтобы назначить соответствующий объект для отображения атрибутов.
PropertyGrid использует объявленные атрибуты для свойств класса этого объекта для определения визуальных объектов, например, если элемент видим (доступен для просмотра), если для атрибута требуется альтернативный рендеринг пользовательского интерфейса (например, раскрывающийся список или текстовое поле).
пример:
[TypeConverter(typeof(MyTypeConverter))]
public string MyAttribute
{
...
}
[Browsable(false)]
public string HiddenAttribute
{
...
}
Однако мне не нравится смешивание этих атрибутов, которые сильно связаны с пользовательским интерфейсом в моих классах данных, не связанных с другими.
Каков наилучший способ объявления этих необходимых атрибутов для PropertyGrid, не мешая моим классам данных?