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

标签 wpf mvvm

我有一个使用 MVVM 的 WPF 项目。我有两个 View :ClientViewCommentView

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

如何访问 CommentViewModel 上的 Client 属性?

注意:属性Client属于ClientViewModel

最佳答案

  • 如果CommentViewModel和ClientViewModel强耦合,可以直接使用
  • 如果 CommentView 可视化树具有来自 ClientViewModel 的数据上下文,您可以使用相对源绑定(bind)来到达那里
  • 您可以使用 MEF 导出“Client”属性并将其导入 CommentViewModel
  • 您可以使用某种 Messenger 或 EventAggregator 从 CommentViewModel 到 ClientViewmodel 进行通信

还有一些我认为的:)

关于wpf - 如何从另一个 ViewModel 访问 ViewModel 的属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8258781/

相关文章:

c# - 图像不透明度,打开和打开

xamarin - Prism :在 ViewModel 中设置值后 View 没有更新?

c# - 如何从位图源 C# WPF 创建图像文件

WPF - 如何重新设置组合框的样式以删除文本框/编辑框并替换为静态文本

c# - 如何将 XAML 文本框绑定(bind)到另一个文本框的输入或它自己的输入,然后将输入保存到 MVVM 中的数据对象?

c# - 导航和重新实例化页面/ View 模型构造函数

wpf - 如何从另一个窗口使用我的应用程序资源?

wpf - Powershell 捕获不同变量中的输出和详细信息

mvvm - kendo 将 HTML 元素绑定(bind)到网格选定的行/数据项

c# - 从 DataGrid 单元格复制文本