Что такое хороший шаблон для обмена данными между связанными представлениями ?.Шаблон для обмена данными между представлениями (MVP или MVVM)
У меня есть приложение, в котором 1 форма содержит много мелких видов, каждый вид ведет себя независимо друг от друга более или менее (они общаются/взаимодействуют через шину событий). Каждый раз мне часто приходится передавать одни и те же объекты в дочерние представления. Иногда мне нужен тот же самый объект, который нужно передать дочернему представлению, а потом он передает его на другой содержащийся сам ребенок.
Что такое хороший подход к совместному использованию этих данных между всеми представлениями, содержащимися в родительской форме (представлении)?
Я изучил CAB и их подход, и каждый «вид» имеет «рабочий элемент управления», этот рабочий элемент имеет словарь, который содержит общее «состояние» между содержащимися представлениями.
Это лучший подход? просто доступный словарь, доступ ко всем представлениям в корневом представлении?
Мой текущий подход прямо сейчас состоит в том, чтобы иметь функцию на представлении, которая позволяет установить объект для этого вида. Что-то вроде
view.SetCustomer(Customer c);
тогда, если представление содержит ребенка смотреть он знает, чтобы установить его на вид ребенка ала:
this.childview1.SetCustomer(c);
Приложение написано на C# 3.5, для WinForms с помощью MVP со структурной картой как поставщик IoC/DI.
Теперь я использую вариацию шаблона медиатора с системой событий. в основном, запускают события, когда загружаются общие данные, поэтому просмотры, которые нужны, получат его и используют. Спасибо. – Dovix