Prism: обмениваться данными между ViewModels, загруженными в регион? - PullRequest
10 голосов
/ 10 декабря 2010

У меня есть View, содержащий TabControl, привязанный к области "CustomerRegion".

У меня есть несколько View / ViewModels, которые помечены как [ViewExport (RegionName = "CustomerRegion")].

Эти элементы успешно загружены в TabControl.

Но теперь мне нужны эти TabItems для обмена некоторыми данными в этом TabControl (не может быть глобальным, так как может быть два или более из этих открытыходновременно).

Есть идеи, как эти TabItems могут обмениваться данными, не выходя из MVVM / MEF?

1 Ответ

13 голосов
/ 13 декабря 2010

Prism имеет концепцию "Context Region", которую вы можете использовать в зависимости от вашего сценария.

Ознакомьтесь с документацией Prism Region и найдите раздел, озаглавленный "Обмен данными между несколькими регионами "(хотя этот заголовок немного вводит в заблуждение ...).

Если вы обнаружите, что это не работает для вас, я бы предложил написать пользовательское наследуемое присоединенное свойство, которое вы можете связатьиз подпредставлений и измените из родительского представления.

...