更改Windows Phone 8.1中所有对象的颜色

时间:2015-09-08 14:04:00

标签: c# windows-phone-8.1 windows-8.1

我的网页中有一些TextBlock,Grid,TextBox等。我想在所有页面中更改颜色,因为我的应用程序中有更改颜色的设置。如何使用代码在所有页面中更改所有颜色的颜色?
我搜索了一些数据绑定但是我无法理解。 (我是 业余)
请帮我?

1 个答案:

答案 0 :(得分:2)

在资源字典中指定SolidColorBrush键。

<SolidColorBrush x:Key="DynamicBrush" Color="White"/>

最初根据需要提供颜色,并将其绑定到所有页面中的控件。当用户倾向于更改颜色时,您可以更改资源字典中的键值,该值将反映在您使用该键的所有页面中。

XAML

<Button Content="change" x:Name="BtnChange" Click="BtnChange_Click"/>

C#

private void BtnChange_Click(object sender, RoutedEventArgs e)
    {
        App.Current.Resources["DynamicBrush"] = new SolidColorBrush(Colors.Red);
        this.Foreground = App.Current.Resources["DynamicBrush"] as SolidColorBrush;
    }

这会对你有帮助。