C# XAML和代码中的Windows 10主题资源

C# XAML和代码中的Windows 10主题资源,c#,xaml,C#,Xaml,如果我在XAML中创建一个具有主题背景的网格: <Grid x:Name="MyGrid" Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> <Grid x:Name="MyGrid"> 网格背景颜色从白色变为黑色,与预期完全一致 但是,如果我在XAML中创建网格而不指定其背景: <Grid x:Name="MyGrid" Background="{ThemeResource Ap

如果我在XAML中创建一个具有主题背景的网格:

<Grid x:Name="MyGrid" Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Grid x:Name="MyGrid">
网格背景颜色从白色变为黑色,与预期完全一致

但是,如果我在XAML中创建网格而不指定其背景:

<Grid x:Name="MyGrid" Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Grid x:Name="MyGrid">
背景不会变为黑色。换句话说,当在代码中访问时,主题资源似乎并不依赖于元素当前请求的主题


有人知道如何在代码中访问主题资源,以便它们的值正确反映元素当前请求的主题吗?

我尝试了几种方法,但什么都没有。我不知道XAML ThemeResource是如何被代码隐藏的,这是一个非常奇怪的“绑定”。这可能是一种获取黑暗字典的方法,但我做不到