我想要加载一组样式以在整个应用程序中用作StaticResource:Styles.xaml
如果我在每个窗口或页面中包含样式,一切正常:
<Window x:Class="MainWindow"
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Resources/Styles.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
</Window>
如果我尝试在我的应用资源中包含该样式,则会抛出一个无法找到MainWindow.xaml资源的错误。
<Application x:Class="App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
StartupUri="MainWindow.xaml">
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Resources/Styles.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
</Application>
任何人都知道为什么我不能在我的应用资源中包含这个?
答案 0 :(得分:0)
我会评论你的帖子,但有50个代表要求......
您是否尝试过设置ResourceDictionary的密钥?
<ResourceDictionary x:Key="Styles" Source="Resources/Styles.xaml" />
答案 1 :(得分:0)
我不确定为什么MergedDictionary不起作用,但如果我将该样式添加为独立资源,它可以正常工作。
<Application x:Class="App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:Excavator"
StartupUri="MainWindow.xaml">
<Application.Resources>
<ResourceDictionary Source="Resources/Styles.xaml" />
</Application.Resources>
</Application>