Всем привет, Решил немного переделать под себя ProgressBar, все получилось, кроме цвета анимации, цвет все равно отдает зеленым (стандартным цветом прогресс бара).  В чем может быть проблема ? Заранее спасибо. Исходный код: Вот объявление контрола. | Код | <ProgressBar HorizontalAlignment="Left" Margin="24,0,0,188" VerticalAlignment="Bottom" Width="208" Height="20" Value="50" Style="{DynamicResource H2BProgressBar}" BorderBrush="#FF7B5526" BorderThickness="2,2,2,2" IsEnabled="True"> <ProgressBar.Foreground> <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0"> <GradientStop Color="#FFC4A182" Offset="0"/> <GradientStop Color="#FFDB8730" Offset="1"/> <GradientStop Color="#FFC58D5F" Offset="0.485"/> <GradientStop Color="#FFA85109" Offset="0.528"/> </LinearGradientBrush> </ProgressBar.Foreground> <ProgressBar.Background> <LinearGradientBrush EndPoint="0.5,0.75" StartPoint="0.5,0.25"> <GradientStop Color="#84472C21" Offset="0"/> <GradientStop Color="#4FF7C331" Offset="1"/> </LinearGradientBrush> </ProgressBar.Background> </ProgressBar>
|
А вот собственно стили и сам template: | Код | <LinearGradientBrush x:Key="ProgressBarBackground" EndPoint="1,0" StartPoint="0,0"> <GradientStop Color="#BABABA" Offset="0"/> <GradientStop Color="#C7C7C7" Offset="0.5"/> <GradientStop Color="#BABABA" Offset="1"/> </LinearGradientBrush> <LinearGradientBrush x:Key="ProgressBarBorderBrush" EndPoint="0,1" StartPoint="0,0"> <GradientStop Color="#B2B2B2" Offset="0"/> <GradientStop Color="#8C8C8C" Offset="1"/> </LinearGradientBrush> <LinearGradientBrush x:Key="ProgressBarGlassyHighlight" EndPoint="0,1" StartPoint="0,0"> <GradientStop Color="#50FFFFFF" Offset="0.5385"/> <GradientStop Color="#00FFFFFF" Offset="0.5385"/> </LinearGradientBrush> <LinearGradientBrush x:Key="ProgressBarTopHighlight" EndPoint="0,1" StartPoint="0,0"> <GradientStop Color="#80FFFFFF" Offset="0.05"/> <GradientStop Color="#00FFFFFF" Offset="0.25"/> </LinearGradientBrush> <LinearGradientBrush x:Key="ProgressBarIndicatorAnimatedFill" MappingMode="Absolute" EndPoint="0,0" StartPoint="-100,0"> <GradientStop Color="#00000000" Offset="0"/> <GradientStop Color="#FF000000" Offset="0.4"/> <GradientStop Color="#FF000000" Offset="0.6"/> <GradientStop Color="#00000000" Offset="1"/> </LinearGradientBrush> <LinearGradientBrush x:Key="ProgressBarIndicatorDarkEdgeLeft" EndPoint="1,0" StartPoint="0,0"> <GradientStop Color="#0C000000" Offset="0"/> <GradientStop Color="#20000000" Offset="0.3"/> <GradientStop Color="#00000000" Offset="1"/> </LinearGradientBrush> <LinearGradientBrush x:Key="ProgressBarIndicatorDarkEdgeRight" EndPoint="1,0" StartPoint="0,0"> <GradientStop Color="#00000000" Offset="0"/> <GradientStop Color="#20000000" Offset="0.7"/> <GradientStop Color="#0C000000" Offset="1"/> </LinearGradientBrush> <RadialGradientBrush x:Key="ProgressBarIndicatorLightingEffectLeft" RelativeTransform="1,0,0,1,0.5,0.5" RadiusX="1" RadiusY="1"> <GradientStop Color="#60FFFFC4" Offset="0"/> <GradientStop Color="#00FFFFC4" Offset="1"/> </RadialGradientBrush> <LinearGradientBrush x:Key="ProgressBarIndicatorLightingEffect" EndPoint="0,0" StartPoint="0,1"> <GradientStop Color="#60FFFFC4" Offset="0"/> <GradientStop Color="#00FFFFC4" Offset="1"/> </LinearGradientBrush> <RadialGradientBrush x:Key="ProgressBarIndicatorLightingEffectRight" RelativeTransform="1,0,0,1,-0.5,0.5" RadiusX="1" RadiusY="1"> <GradientStop Color="#60FFFFC4" Offset="0"/> <GradientStop Color="#00FFFFC4" Offset="1"/> </RadialGradientBrush> <LinearGradientBrush x:Key="ProgressBarIndicatorGlassyHighlight" EndPoint="0,1" StartPoint="0,0"> <GradientStop Color="#90FFFFFF" Offset="0.5385"/> <GradientStop Color="#00FFFFFF" Offset="0.5385"/> </LinearGradientBrush> <Style x:Key="H2BProgressBar" TargetType="{x:Type ProgressBar}"> <Setter Property="Foreground" Value="#01D328"/> <Setter Property="Background" Value="{StaticResource ProgressBarBackground}"/> <Setter Property="BorderBrush" Value="{StaticResource ProgressBarBorderBrush}"/> <Setter Property="BorderThickness" Value="1"/> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="{x:Type ProgressBar}"> <Grid SnapsToDevicePixels="true" x:Name="Background"> <Rectangle Fill="{TemplateBinding Background}" RadiusX="2" RadiusY="2"/> <Rectangle Margin="1" x:Name="PART_Track"/> <Decorator HorizontalAlignment="Left" Margin="1" x:Name="PART_Indicator"> <Grid x:Name="Foreground"> <Grid.ColumnDefinitions> <ColumnDefinition MaxWidth="15"/> <ColumnDefinition Width="0.1*"/> <ColumnDefinition MaxWidth="15"/> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition/> <RowDefinition/> </Grid.RowDefinitions> <Rectangle x:Name="Indicator" Fill="{TemplateBinding Foreground}" Grid.ColumnSpan="3" Grid.RowSpan="2"/> <Rectangle x:Name="Animation" Fill="{TemplateBinding Foreground}" Grid.ColumnSpan="3" Grid.RowSpan="2" Visibility="Visible"> <Rectangle.OpacityMask> <MultiBinding> <MultiBinding.Converter> <Microsoft_Windows_Themes:ProgressBarHighlightConverter/> </MultiBinding.Converter> <Binding Source="{StaticResource ProgressBarIndicatorAnimatedFill}"/> <Binding Path="ActualWidth" ElementName="Background"/> <Binding Path="ActualHeight" ElementName="Background"/> </MultiBinding> </Rectangle.OpacityMask> </Rectangle> <Rectangle Margin="1,4,0,-2" x:Name="LeftDark" Fill="{StaticResource ProgressBarIndicatorDarkEdgeLeft}" RadiusX="1" RadiusY="1" Grid.RowSpan="2"/> <Rectangle Margin="0,1,1,1" x:Name="RightDark" Fill="{StaticResource ProgressBarIndicatorDarkEdgeRight}" RadiusX="1" RadiusY="1" Grid.Column="2" Grid.RowSpan="2"/> </Grid> </Decorator> <Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="2"/> </Grid> <ControlTemplate.Triggers> <Trigger Property="Orientation" Value="Vertical"> <Setter Property="LayoutTransform" TargetName="Background"> <Setter.Value> <RotateTransform Angle="-90"/> </Setter.Value> </Setter> <Setter Property="LayoutTransform" TargetName="PART_Track"> <Setter.Value> <RotateTransform Angle="90"/> </Setter.Value> </Setter> <Setter Property="LayoutTransform" TargetName="PART_Indicator"> <Setter.Value> <RotateTransform Angle="90"/> </Setter.Value> </Setter> <Setter Property="LayoutTransform" TargetName="Foreground"> <Setter.Value> <RotateTransform Angle="-90"/> </Setter.Value> </Setter> </Trigger> <Trigger Property="IsIndeterminate" Value="true"> <Setter Property="Visibility" TargetName="LeftDark" Value="Collapsed"/> <Setter Property="Visibility" TargetName="RightDark" Value="Collapsed"/> <Setter Property="Visibility" TargetName="Indicator" Value="Collapsed"/> </Trigger> <Trigger Property="IsIndeterminate" Value="false"> <Setter Property="Fill" TargetName="Animation" Value="#80B5FFA9"/> </Trigger> </ControlTemplate.Triggers> </ControlTemplate> </Setter.Value> </Setter> </Style>
|
Это сообщение отредактировал(а) mirageb - 13.1.2009, 15:29
|