【发布时间】:2013-06-05 13:37:58
【问题描述】:
我的 WPF 应用程序使用资源字典。我也在使用 MVVM。
我正在绑定到 ResourceDictionary,但想将我的 MainWindow ViewModel 绑定到 MainWindow(Window 类型),但 MVVM 不允许我作为 MainWindow,它不是 UserControl 类型。
<Grid.Resources>
<ResourceDictionary Source="Resources\ResourceDictionary.xaml" />
</Grid.Resources>
<Grid.DataContext>
<Binding Source="{StaticResource Mwvm}" />
</Grid.DataContext>
</Grid>
这意味着我不能这样做
<DataTemplate DataType="{x:Type viewModel:MainWindowViewModel}">
<root:MainWindow x:Key="Mwvm" />
</DataTemplate>
有谁知道我可以如何做同样的事情,但是当对象是一个窗口并且只使用 XAML 时(我知道我可以使用 app.xaml onstartup() 中的代码来做到这一点)?
编辑 为了清楚起见,我知道在我的 MainWindow 中我可以为我的 ViewModel 声明一个命名空间,但是当命名空间已经在我的 ResourceDictionary 中引用并且我正在引用我的 ResourceDictionary 时,这是正确的方法吗?
【问题讨论】:
标签: wpf mvvm resourcedictionary