我为Windows 8.1默认XAML模板和样式下载了resource dictionary。在我的应用程序中(使用v2010),我添加了一个资源字典文件。但是,当我将它粘贴到字典文件中时,它会给我一个ResourceDictionary。找不到错误的字典。
我错过了任何dll吗?
答案 0 :(得分:0)
我认为ThemeDictionaries仅适用于通用Windows平台(UWP)应用程序。如果要编写标准的Windows WPF应用程序,则XML命名空间ThemeDictionaries不适用。
如果要在WPF中分离资源,则可以在App.xaml中如下引用它们:
在项目中创建一个“资源”文件夹,然后添加所需的WPF资源字典文件。
将样式添加到每个资源文件中的ResourceDictionary部分,例如
<LinearGradientBrush x:Key="EpicLinearGradientBrush" StartPoint="0.5,0.0" EndPoint="0.5,1" Opacity="0.4">
<GradientStop Color="LightSkyBlue" Offset="0.2" />
<GradientStop Color="#3598db" Offset="0.5" />
</LinearGradientBrush> </ResourceDictionary>
最后,您需要让您的应用程序知道它需要使用您创建的其他资源文件。
在App.xaml文件中
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Resources/EpicBrushes.xaml"></ResourceDictionary>
<ResourceDictionary Source="Resources/EpicStyling.xaml"></ResourceDictionary>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
您现在可以像引用其他任何资源一样引用在页面中。
<DockPanel ZIndex="0" Grid.Row="0" Background="{DynamicResource EpicLinearGradientBrush}">