У меня есть приложение, в котором мне нужно отредактировать некоторые данные, и структура PropertyGrid визуально является лучшим кандидатом для моих нужд.Однако PropertyGrid принимает открытые свойства объекта и отображает их в сетке.(дополнительные опции с атрибутами).Однако у меня нет такого объекта, потому что список пар ключ-значение, которые мне нужно отредактировать, является динамическим.
Идеальным решением было бы что-то вроде этого:
public class GridParam
{
// ... several constructors here, one for each type
// ... or a single one but with generic class, does not matter
public String Name { get; set; }
public Object Value { get; set; }
public Type ItemType { get; set; }
}
GridParam stringParam = new GridParam("Address", "2534 Barkeley Av.");
GridParam numberParam = new GridParam("Year", 2012);
NewKindOfPropertyGrid grid = new NewKindOfPropertyGrid();
grid.AddParam(stringParam);
grid.AddParam(numberParam);
Приведенный выше код генерирует сетку свойств, которая выглядит следующим образом:
Возможно ли что-то подобное с PropertyGrid или любым другим существующим элементом управления (который, по крайней мере, похож на PG)? Синтаксис не обязательно должен быть похож на то, что я написал, но он должен быть в состоянии принимать коллекцию таких свойств, которые могут быть динамическими, без определения класса ...