如何从另一个ViewModel访问ViewModel的属性?

如何从另一个ViewModel访问ViewModel的属性?

问题描述:

我有一个使用MVVM的WPF项目。我有两个意见:ClientViewCommentView如何从另一个ViewModel访问ViewModel的属性?

ClientView在DataGrid中选择一个客户端后,我打开一个屏幕CommentView

我如何进入CommentViewModel的房产Client

注意:属性Client属于ClientViewModel

+1

为什么你需要那个?看起来像错误的设计 – sll

  • 如果CommentViewModel和ClientViewModel强耦合,你可以用它直接
  • 如果评论查看视觉树有任何地方,您可以使用的RelativeSource绑定到那里
  • 您可以使用MEF用于出口的ClientViewModel在DataContext “客户端”属性并将其导入在CommentViewModel
  • 你可以使用某种Messenger或EventAggregator从您CommentViewModel传达给你的ClientViewmodel

和一些我认为:)

创建时通过ClientViewModelClientViewModel.ClientCommentViewModel的引用。