我在为窗口单独的XAML文件中使用DataContext的应用程序资源时遇到问题。 (DataContext是MVVM ViewModel。)我搜索了Google和SO,看起来我正在做的应该是正确的。 这是App.xaml代码:
<Application x:Class="Test.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:ViewModel="clr-namespace:Test.ViewModel;assembly=Test.ViewModel"
Startup="Application_Startup">
<Application.Resources>
<ViewModel:DocumentManager x:Key="DocumentManagerViewModel" />
</Application.Resources>
</Application>
以下是我的MainWindow.xaml的一部分:
<ribbon:Ribbon>
<ribbon:Ribbon.ApplicationMenu>
<ribbon:RibbonApplicationMenu SmallImageSource="..\Images\SmallIcon.png"
DataContext="{Binding Source={StaticResource DocumentManagerViewModel}}">
</ribbon:RibbonApplicationMenu>
</ribbon:Ribbon.ApplicationMenu>
</ribbon:Ribbon>
当我运行它时,我得到以下XamlParseException:
'在'System.Windows.StaticResourceExtension'上提供值引发异常。行号“31”和行位置“47”。
我也尝试过:
DataContext =“{StaticResource DocumentManagerViewModel}”