C# 尝试将网格背景设置为强调色时出错

C# 尝试将网格背景设置为强调色时出错,c#,windows-phone-7,windows-phone-8,colors,grid,C#,Windows Phone 7,Windows Phone 8,Colors,Grid,在我的应用程序中,用户可以选择他们想要的应用程序特定功能的颜色 他们可以从各种颜色中进行选择,但在尝试将网格背景设置为重点颜色时,这些颜色效果很好;选择此选项后,将显示未处理的NullReferenceException错误 我使用的代码是: Color accentColour = (Color)Application.Current.Resources["PhoneAccentColor"]; gridColour.Background = new SolidColorBrush(accen

在我的应用程序中,用户可以选择他们想要的应用程序特定功能的颜色

他们可以从各种颜色中进行选择,但在尝试将网格背景设置为重点颜色时,这些颜色效果很好;选择此选项后,将显示未处理的
NullReferenceException
错误

我使用的代码是:

Color accentColour = (Color)Application.Current.Resources["PhoneAccentColor"];
gridColour.Background = new SolidColorBrush(accentColour);
有人知道我做错了什么吗?(我也尝试过使用矩形,它是
.Fill
属性)

谢谢


[已解决:在评论中发布已解决。]

我想您可以通过为网格绑定
XAML
中的
PhoneAccent
颜色轻松做到这一点

这些线程将非常有用:


希望有帮助

您可以在导航到事件的
on中尝试该代码。它起作用了

protected override void OnNavigatedTo(NavigationEventArgs e)
{
    base.OnNavigatedTo(e);
    Color accentColour = (Color)Application.Current.Resources["PhoneAccentColor"];
    ContentPanel.Background = new SolidColorBrush(accentColour);
}

你在启动时运行这个代码吗?我唯一能想到的是,应用程序资源还没有加载…这可能就是为什么,我可以尝试一下!这就是为什么有一个复选框,用户可以在其中为应用程序内功能选择颜色。网格只是一个图形显示,向用户显示选定的颜色。但是,默认情况下,复选框已选中,因此选中事件在流程中触发得太早;在追缉队上膛之前!干杯。是的,我知道如何通过XAML实现,但是在这种特殊情况下,网格的颜色由用户操作定义,因此必须通过c#实现。