请问下WPF的slider样式要如何才能改成下面这样。。。求助下。。。还是说使用其他控件才能做出这种。。。

请问下WPF的slider样式要如何才能改成下面这样。。。求助下。。。还是说使用其他控件才能做出这种。。。跪地先谢谢了在epressionblend中试了下,slider... 请问下WPF的slider样式要如何才能改成下面这样。。。求助下。。。
还是说使用其他控件才能做出这种。。。跪地先谢谢了
在epression blend中试了下,slider好像好难更改样式。。。
展开
 我来答
Miles999
2012-06-22 · TA获得超过598个赞
知道小有建树答主
回答量:490
采纳率:0%
帮助的人:215万
展开全部

可以的,就用blend该样式就可以。 ??不为什么不显示图片??

但是有点不一样的就是,你在拖动之后的左侧是灰色,这个我知道用绑定依赖属性可以,但是需要在后台来写了。其他方法就不知道了。

或者你重写slider这个类。

<Style x:Key="SliderRepeatButtonStyle" TargetType="{x:Type RepeatButton}">

<Setter Property="OverridesDefaultStyle" Value="true"/>

<Setter Property="IsTabStop" Value="false"/>

<Setter Property="Focusable" Value="false"/>

<Setter Property="Template">

<Setter.Value>

<ControlTemplate TargetType="{x:Type RepeatButton}">

<Rectangle Fill="Transparent"/>

</ControlTemplate>

</Setter.Value>

</Setter>

</Style>

<Style x:Key="HorizontalSliderThumbStyle" TargetType="{x:Type Thumb}">

<Setter Property="Focusable" Value="false"/>

<Setter Property="OverridesDefaultStyle" Value="true"/>

<Setter Property="Height" Value="10"/>

<Setter Property="Width" Value="10"/>

<Setter Property="Foreground" Value="Gray"/>

<Setter Property="Template">

<Setter.Value>

<ControlTemplate TargetType="{x:Type Thumb}">

       <Ellipse Fill="#FFAED1ED" Stroke="#FF5E5D5D" StrokeThickness="0.8" />

</ControlTemplate>

</Setter.Value>

</Setter>

</Style>

<Style x:Key="SliderStyle" TargetType="{x:Type Slider}">

<Setter Property="Stylus.IsPressAndHoldEnabled" Value="false"/>

<Setter Property="Background" Value="Transparent"/>

<Setter Property="Foreground" Value="#FFC4C4C4"/>

<Setter Property="Template">

<Setter.Value>

<ControlTemplate TargetType="{x:Type Slider}">

<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" SnapsToDevicePixels="true">

<Grid>

<Grid.RowDefinitions>

<RowDefinition Height="Auto"/>

<RowDefinition Height="Auto" MinHeight="{TemplateBinding MinHeight}"/>

<RowDefinition Height="Auto"/>

</Grid.RowDefinitions>

<TickBar x:Name="TopTick" Fill="{TemplateBinding Foreground}" Height="4" Placement="Top" Grid.Row="0" Visibility="Collapsed"/>

<TickBar x:Name="BottomTick" Fill="{TemplateBinding Foreground}" Height="4" Placement="Bottom" Grid.Row="2" Visibility="Collapsed"/>

<Border x:Name="TrackBackground"  CornerRadius="1" Height="5.0" Margin="5,0" Grid.Row="1" VerticalAlignment="center">

<Grid>

  <Border Background="#FFF7F4F4" CornerRadius="0.5" Opacity="0.215"/>

  <Border Background="#FF132E50" CornerRadius="0.5" Margin="0,0,0.3,0.3" Opacity="0.715"/>

  </Grid>

</Border>

<Track x:Name="PART_Track" Grid.Row="1">

<Track.DecreaseRepeatButton>

<RepeatButton Command="{x:Static Slider.DecreaseLarge}" Style="{StaticResource SliderRepeatButtonStyle}"/>

</Track.DecreaseRepeatButton>

<Track.IncreaseRepeatButton>

<RepeatButton Command="{x:Static Slider.IncreaseLarge}" Style="{StaticResource SliderRepeatButtonStyle}"/>

</Track.IncreaseRepeatButton>

<Track.Thumb>

<Thumb x:Name="Thumb" Style="{StaticResource HorizontalSliderThumbStyle}"/>

</Track.Thumb>

</Track>

</Grid>

</Border>

</ControlTemplate>

</Setter.Value>

</Setter>

</Style>

追问
。。。其实我是初学者,我有点不清楚上面这段代码是要放到哪里
不过很感谢你啦~看你的截图觉得应该是可以用的

补充下:啊 我懂了 谢谢啦~
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式