2015-03-09 1 views
0

Я хотел бы знать. Как я могу динамически выбирать вид? Я хотел бы сделать PropertyGrid в своем приложении. Свойство PropertyGrid должно измениться при выборе пользователем объекта. Насколько я понимаю для этой задачи, мне нужно использовать DataTemplate, но как я могу динамически создавать DataTemplate в коде? Дело в том, что я использую плагины и View и ViewModel для каждого плагина, расположенного в отдельной dll, и поэтому я не могу напрямую писать DataTemplate в PropertyesViewModel. Как я могу создать свойства редактирования для каждого плагина с помощью PropertyGrid, если я не могу использовать DataTemplate?Плагины Catel Mvvm PropertyGrid

ответ

0

Для Catel не имеет значения, в каких сборках представлены виды/модели просмотра, поскольку они используют условные соглашения об именах. Однако, если вы хотите показать пользовательский вид, основанный на логике, которая может находиться внутри плагина, я думаю, что это не доступно для Catel.

Чтобы решить эту проблему, вы должны реализовать настраиваемую службу, которая может связываться с плагинами и разрешать правильное представление для выбранного объекта. Одним из решений может быть соглашение об именах (если это PersonModel, вы можете показать PersonPropertiesView и PersonPropertiesViewModel). Однако это должен быть настраиваемый сервис.