假设我有一个使用 MVVM 模式的 WPF 应用程序。应用程序的主窗口在 XAML 中定义其数据上下文:
<Window.DataContext>
<vm:MainWindowViewModel/>
</Window.DataContext>
是否可以在InitializeComponent()
后获取对 XAML 代码隐藏中当前MainWindowViewModel
实例的引用?我知道在使用 MVVM 时不建议这样做,但我找不到任何其他方法来解决我的问题。
确定:
var viewModel=DataContext as MainWindowViewModel;
只需将 DataContext 转换为视图模型的类型即可。
你可以把它保存在某个静态类中,并将其定义为静态资源。