1

我应该如何在 wp8 应用程序中更改进度条控件的背景颜色。虽然它可以通过设计器视图进行更改,但我想稍后通过我无法做到的 c# 代码更改它:(。我试过做

percentprogress.Background=<different values>

其中不同的值是十六进制和 rgb 代码,percentprogress 是它的名字,甚至尝试过

System.Windows.Media.Brush

任何想法,如何实现这一目标?

还有一件事,如何在用户每次打开应用程序时更改此颜色,无论是新会话还是暂停应用程序的恢复。我应该把它放在 InitializeComponent() 下吗?{ 表示在 public MainPage() 方法下?}

谢谢 :)

4

1 回答 1

1

您可以像这样更改 ProgressBar 颜色:

percentprogress.Foreground = new SolidColorBrush(Color.FromArgb(255, 24, 50, 60));
percentprogress.Foreground = new SolidColorBrush(Colors.Orange);

每次用户打开应用程序时更改代码 - 在 App.xaml.cs 中,在 Application_Launching 和 Application_Activated 方法中保存一些应更改颜色的静态标志

public static bool ChangeColor;
private void Application_Launching(object sender, LaunchingEventArgs e)
{
    ChangeColor = true;
}

private void Application_Activated(object sender, ActivatedEventArgs e)
{
    ChangeColor = true;
}

然后在您的页面中更改它,如下所示:

protected override void OnNavigatedTo(NavigationEventArgs e)
{
    base.OnNavigatedTo(e);

    if (App.ChangeColor)
    {
        Random m = new Random();
        percentprogress.Foreground = new SolidColorBrush(
            Color.FromArgb(255, (byte)m.Next(0, 255), (byte)m.Next(0, 255), (byte)m.Next(0, 255)));
        App.ChangeColor = false;
    }
}
于 2013-11-09T17:52:31.303 回答