Неправильные цвета в WPF Progress Bar - PullRequest
7 голосов
/ 01 сентября 2011

РЕДАКТИРОВАТЬ: Я решил свою проблему ... взгляните на мой ответ.Исправьте, если это не так.Спасибо.

Вопрос: Почему-то кажется, что индикатор выполнения в приложении WPF не показывает нужный мне цвет.

Вот код XAML:

<Window x:Class="TaskbarProgressApp.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <Window.TaskbarItemInfo>
        <TaskbarItemInfo />
    </Window.TaskbarItemInfo>
    <Grid>
        <ProgressBar x:Name="ProgressBar"
                     Margin="10"
                     HorizontalAlignment="Stretch"
                     VerticalAlignment="Center"
                     Height="23" Background="{x:Null}" Foreground="DarkRed">
        </ProgressBar>
    </Grid>
</Window>

Вот результат:

enter image description here

Не похоже на темно-красный для меня ... происходит с каждым цветом: (

Есть мысли?

Ответы [ 2 ]

5 голосов
/ 10 сентября 2011

Спасибо @Merlyn Morgan-Graham и @CharithJ за то, что они указали на другой вопрос, я подумал, что это был другой вопрос, когда я его прочитал.

Я решил проблему и хотел поделиться ею.

Я скачал пробную смесь MS Expression Blend и изменил:

<Trigger Property="IsIndeterminate" Value="false">
    <Setter Property="Background" TargetName="Animation" Value="#80B5FFA9"/>
</Trigger>

To

<Trigger Property="IsIndeterminate" Value="false">
    <Setter Property="Background" TargetName="Animation" Value="#00000000"/>
</Trigger>

Это дает цвета такими, как они есть:

DarkКрасный:

enter image description here

Даже это работает

<Trigger Property="IsIndeterminate" Value="true">
    <Setter Property="Background" TargetName="Animation" Value="#80B5FFA9"/>
</Trigger>

Не меняет индикатор выполнения, но цвета такие, какими они должны быть.

Печально, что нет возможности изменить его напрямую.

Спасибо за помощь.

4 голосов
/ 01 сентября 2011

Вы можете сделать это, изменив шаблон управления. Вот статья об этом из MSDN. Пример ProgressBar ControlTemplate

Здесь - другая похожая тема.

...