1

假设我有一个使用 MVVM 模式的 WPF 应用程序。应用程序的主窗口在 XAML 中定义其数据上下文:

<Window.DataContext>
  <vm:MainWindowViewModel/>
</Window.DataContext>

MainWindowViewModel是否可以在 XAML 代码隐藏之后获取对当前实例的引用InitializeComponent()?我知道在使用 MVVM 时不建议这样做,但我想不出任何其他方法来解决我的问题。

4

2 回答 2

4

当然:

var viewModel=DataContext as MainWindowViewModel;

只需将您的 DataContext 转换为您的视图模型的类型。

于 2012-12-06T08:28:56.270 回答
0

您可以将其保存在某个静态类中并将其定义为静态资源。

于 2012-12-06T08:30:09.777 回答