C# 基于范围WPF设置进度条前景色的动画
我有一个进度条,我需要根据特定范围设置动画,例如: 0-30-将进度条的前景设置为红色 31-60-将进度条的前景设置为橙色 61-100-将进度条的前景设置为绿色 这就是我目前拥有的:C# 基于范围WPF设置进度条前景色的动画,c#,wpf,xaml,mvvm,C#,Wpf,Xaml,Mvvm,我有一个进度条,我需要根据特定范围设置动画,例如: 0-30-将进度条的前景设置为红色 31-60-将进度条的前景设置为橙色 61-100-将进度条的前景设置为绿色 这就是我目前拥有的: <ProgressBar Height="12" Canvas.Left="31" Canvas.Top="75" Width="24" Value="0"> <ProgressBar.Triggers> <EventTrig
<ProgressBar Height="12" Canvas.Left="31" Canvas.Top="75" Width="24" Value="0">
<ProgressBar.Triggers>
<EventTrigger RoutedEvent ="Loaded">
<BeginStoryboard>
<Storyboard >
<DoubleAnimation Storyboard.TargetProperty="Value" From="0" To="{Binding Price, Mode=TwoWay}" Duration="0:0:0.3"/>
<ColorAnimation Storyboard.TargetProperty="(Foreground).(SolidColorBrush.Color)" To="Orange" Duration="0:0:0.3"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</ProgressBar.Triggers>
</ProgressBar>
有什么方法可以做到这一点吗?正如WPFUser所说,您可以使用
IValueConverter
,它根据int在此处输入code
值生成颜色。在这种情况下,您应该返回:
00-30:红色
31-60:橙色
61-100:绿色
然后当
值为65时,使用ProgressBar foregound上返回的值:前景是红-橙-绿还是只有绿色?每当进度值更改时,您都会收到回调?您可以使用IValueConverter@NawedNabiZada应该是green@WPFUser你能给我举个例子吗?