Как мне обмениваться данными между несколькими ViewModels?
Например, есть класс с именем Project в приложении.
public class Project : ModelBase
{
private string _projectName;
public string ProjectName
{
get { return _projectName; }
set
{
_projectName = value;
RaisePropertyChanged(() => ProjectName);
}
}
}
В нескольких приложениях ViewModels необходимо открыть ActiveProject.
Какой лучший способ поделиться проектом между ViewModels?
- Схема посредника? (Сообщений)
- Статический объект
- Синтаксический шаблон (если да, как?)
Я использовал Messaging раньше, но для этого нужно много трещин. Для всех ViewModels я должен создать свойство ActiveProject, а также зарегистрировать мессенджер, чтобы обновить его.
Я использую среду MVVM Light.
Любой пример кода будет оценен.