在XAML中将Application Resource用作DataContext

时间:2012-02-09 01:11:48

标签: c# xaml datacontext staticresource

我在为窗口单独的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}”

0 个答案:

没有答案