Я получаю ошибку времени выполнения StaticResource not found for key
при использовании Style
в ResourceDictionary
, объединенном с помощью MergedDictionaries
.
App.xaml
<Application x:Class="MyApp.App"
xmlns:local="MyApp"
xmlns:assets="clr-namespace:MyApp.Assets">
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<assets:Styles />
</ResourceDictionary.MergedDictionaries>
<Style ...>
<!-- other styles... -->
Styles.xaml
<ResourceDictionary x:Class="MyApp.Assets.Styles">
<Style x:Key="Subheading" TargetType="Frame">
<Setter Property="BackgroundColor" Value="DarkSlateGray"></Setter>
<Setter Property="HasShadow" Value="True"></Setter>
</Style>
</ResourceDictionary>
Styles.xaml.cs
namespace MyApp.Assets
{
[XamlCompilation(XamlCompilationOptions.Compile)]
public partial class Styles : ResourceDictionary
{
public Styles () { }
}
}
Page.xaml
<Frame Style="{StaticResource Subheading}">
Приложение компилируется правильно - оно просто не может найтиSubheading
во время выполнения.Если я скопирую узел <Style>
непосредственно в App.xaml, он работает нормально.Может кто-нибудь найти мой неправильный синтаксис?Или есть ли способ во время выполнения взглянуть на Application.Resources, чтобы я мог выяснить, где он находится?