Я думаю, що ви бачите це поняття, яке називається зв'язувати через, тобто якщо у вашої моделі є властивість під назвою ім'я, а ваша модель перегляду відкриває це властивість без додаткового редагування чи перетворення, то ви можете прив’язатись до моделі, щоб це було.
Псевдокод:
{Binding: MyViewModel.MyModel.Name}
Це робиться для зменшення кількості властивостей "Fluff" на моделі перегляду, на жаль, це також погана ідея в довгостроковій перспективі. Концепція моделі перегляду полягає в тому, щоб погляд не приймав залежності від моделі. Прив'язуючи вас тепер, ви повинні переконатися, що ваша модель містить властивість під назвою name, інакше ваша реалізація буде порушена.
Якщо ви прив'язуєте лише те, що стосується моделі перегляду, проте ви можете змінити модель, і представлення ніколи не дізнається, оскільки воно лише коли-небудь побачить властивість з назвою Name на моделі view.
Тепер це можна пом'якшити за певних обставин, якщо ваша модель базується на інтерфейсі. Отже, якщо в інтерфейсі був IBaseDetails, який відкрив властивість ModuleName, ви можете:
Псевдокод:
{Binding: MyViewModel.MyModel.ModuleName}
Поки будь-яка з моделей, які ви створюєте, задовольняє інтерфейс IBaseDetails, ваша золота, майте на увазі, що це кращий випадок, і взагалі вам на 90% завжди краще обернути свою модель перегляду навколо будь-яких моделей, які вона охоплює.