0

我试图弄清楚如何在 WinRT 中为整个应用程序使用自定义背景颜色。本质上,我想给用户一个更改背景颜色代码的选项。选择和存储它很容易。我没有看到的是如何设置它,以便它:

A) 当用户改变颜色时立即改变。B) 使用资源字典设置背景颜色

最初,我只是通过将每个基本网格的背景颜色设置为我静态设置的颜色来设置每个框架/页面的背景颜色。我尝试使用绑定来绑定颜色,但这似乎不起作用。

因此,我尝试将背景颜色分解为资源字典,以查看是否可以将一个设置应用于应用程序,但即使这样似乎也不起作用(无法编译)。像这样:

<ResourceDictionary>
    <Page.Background>
        <SolidColorBrush Color="Black"/>
    </Page.Background>
</ResourceDictionary>

我也尝试将它应用于框架而不是页面,但这似乎也无法编译。首先,我似乎无法编译任何东西来设置一种常见的应用颜色。

第二个是一旦工作,如何动态更改 ResourceDictionary 以应用新的背景颜色。

我搜索了互联网和多个站点,试图找到示例,但甚至没有任何好的示例。

第一个也是最简单的问题的答案会很棒。帮助设置背景将是锦上添花!

4

1 回答 1

0

这在 WinRT/XAML 中会有点困难,因为它没有{DynamicResource}WPF 的概念,所以即使你以编程方式修改资源字典(这应该是可行的) - 你仍然需要以某种方式触发重新加载整个 UI 树。也许通过在你的根框架中来回导航(假设你使用一个)?

于 2013-02-28T21:06:09.727 回答