Куда должна идти информация для PropertyGrid? - PullRequest
1 голос
/ 06 января 2012

Мы используем .NET Remoting с архитектурой Client / Shared / Server, где:

Shared DLL: общая для клиента и сервера
Server EXE: реализует общие интерфейсы
Client EXE:создает прокси общих интерфейсов для доступа к серверу

Теперь на стороне клиента нам нужно иметь некоторые объекты класса, редактируемые через PropertyGrid, которые затем будут обновлены до сервера.

Опция A : пометить общие классы всеми необходимыми System.ComponentModel атрибутами для PropertyGrid
Опция B : использовать около 1: 1 классов-оболочек в клиенте и использовать System.ComponentModelатрибуты?(PITA из-за дублирования кода)
Опция C :?

1 Ответ

0 голосов
/ 06 января 2012

PropertyGrid смотрит на объект - он на самом деле не интересуется интерфейсами (и явные реализации интерфейса даже не будут отображаться в PropertyGid).

Если у вас уже есть подход с моделью представления, тогда, очевидно, украсьтеview-model.

Все сводится к тому, сколько вы хотите разделить.Так как вы делитесь библиотекой, нет оснований украшать базовую модель;однако, если вы не хотите, чтобы пользовательский интерфейс знал о базовых типах, то добавьте модель представления, возможно, с моделью представления, взаимодействующей с интерфейсами (поэтому не имеет значения, какова фактическая реализация).

...