2011-01-26 17 views
1

私は、右に進むにつれて特定の色でトラックを塗りつぶしたい水平スライダーコントロールを持っています。進行中のスライダーコントロールを塗りつぶします

私は、デフォルトの実装(下記関連部分)で探しています:

 <ControlTemplate x:Key="HorizontalSlider" TargetType="{x:Type Slider}"> 
     <Grid> 
      <Grid.RowDefinitions> 
       <RowDefinition Height="Auto"/> 
       <RowDefinition Height="Auto" MinHeight="{TemplateBinding Slider.MinHeight}"/> 
       <RowDefinition Height="Auto"/> 
      </Grid.RowDefinitions> 
      <TickBar Name="TopTick" SnapsToDevicePixels="True" Placement="Top" Fill="{StaticResource GlyphBrush}" 
        Height="4" Visibility="Collapsed" /> 
      <Border Name="TrackBackground" Margin="0" CornerRadius="2" Height="4" Grid.Row="1" 
        Background="{StaticResource LightBrush}" BorderBrush="{StaticResource NormalBorderBrush}" 
        BorderThickness="1" /> 
      <Track Grid.Row="1" Name="PART_Track"> 
       <Track.DecreaseRepeatButton> 
        <RepeatButton Style="{StaticResource SliderButtonStyle}" 
            Command="Slider.DecreaseLarge" /> 
       </Track.DecreaseRepeatButton> 
       <Track.Thumb> 
        <Thumb Style="{StaticResource SliderThumbStyle}" /> 
       </Track.Thumb> 
       <Track.IncreaseRepeatButton> 
        <RepeatButton Style="{StaticResource SliderButtonStyle}" Command="Slider.IncreaseLarge" /> 
       </Track.IncreaseRepeatButton> 
      </Track> 
      <TickBar Name="BottomTick" SnapsToDevicePixels="True" Grid.Row="2" Fill="{TemplateBinding Foreground}" 
        Placement="Bottom" Height="4" Visibility="Collapsed" /> 
     </Grid> 
     <ControlTemplate.Triggers> 
      <Trigger Property="TickPlacement" Value="TopLeft"> 
       <Setter TargetName="TopTick" Property="Visibility" Value="Visible"/> 
      </Trigger> 
      <Trigger Property="TickPlacement" Value="BottomRight"> 
       <Setter TargetName="BottomTick" Property="Visibility" Value="Visible"/> 
      </Trigger> 
      <Trigger Property="TickPlacement" Value="Both"> 
       <Setter TargetName="TopTick" Property="Visibility" Value="Visible"/> 
       <Setter TargetName="BottomTick" Property="Visibility" Value="Visible"/> 
      </Trigger> 
     </ControlTemplate.Triggers> 
    </ControlTemplate> 

そしてまた、私が欲しいものを識別 - それとして、赤が言うに「TrackBackground」という名前のボーダーの背景を設定しますダニ。しかし、私はトリガーとして使用するための適切なプロパティを見つけることができません。

答えて

4

あなたがしようとしているのは、親指の左側にあるスライダーの部分を赤くする場合は、常にTrack.DecreaseRepeatButtonのスタイルを置き換えて、常に赤になるようにする必要があります。トリガの必要はありません。

+0

うん、それは私が探していたものです - ありがとう。 – user350213

+0

申し訳ありませんが、これは私のために動作しません。 – thowa

関連する問題