Dynamic Свойства PropertyGrid

Итак, для этого проекта, над которым я работаю, мы решили использовать элемент управления .NET PropertyGrid.Сетка свойств заполняется объектом, который создается во время выполнения в зависимости от того, какой элемент выбран пользователем. в элементе управления ListView.

S o, если они выберут первый элемент в ListView, например «Основа», в PropertyGrid будут показаны свойства этого компонента, например его размеры. Затем они выбирают «Верх», и в PropertyGrid отображается цвет. В любом случае, каждый элемент в списке является одним единственным «компонентным» объектом.

В основном, когда выбран элемент ListView, цикл перебирает набор данных, чтобы найти, какие свойства связаны с этим выбранным компонентным объектом, а затем попадает в класс контейнера свойств, который отображается в сетке свойств.

Что я пытаюсь выяснить, поскольку все эти компоненты и свойства являются одним классом, как я могу динамически определить, какие свойства должны отображаться в виде раскрывающегося меню, окна изображения или текстового поля.

Я использую Visual Studios 2010/C#.NET, а для генерации динамических свойств использую популярный класс «Property Bag», который я нашел на CodeProject Тони Алловатта. Единственное, что я могу придумать, это, возможно, добавить дополнительный столбец в базу данных для свойств и использовать его, чтобы сообщить PropertyBag, какой тип данных добавить? Кажется, это популярная тема, но мне трудно понять, как это сделать в сочетании с динамически создаваемым объектом.

7
задан sab669 21 May 2012 в 16:13
поделиться