CreateProperty
просто возвращает вам отражение, основанное PropertyDescriptor
на рассматриваемом типе (это не AddProperty
так). Каков сценарий здесь? Если вам просто нужно отобразить дополнительные данные DataGridView
, самым простым вариантом является просто добавить дополнительный разделительный столбец в сетку.
Вы можете расширять типы во время выполнения, но для списков вы имеете два основных варианта:
ITypedList
(если каждый экземпляр списка может иметь разные столбцы) - см. этот ответTypeDescriptionProvider
- позволяет добавлять пользовательские свойства для каждого типа (в конечном счете сводится к написаниюPropertyDescriptor
, как и в первом примере, - но разные крючки)
В этом ответе приведены полные правила использования метаданных на основе списка.