有没有人见过 Office 2007 风格缩放滑块的好模板?
如图所示 alt text http://www.theexceladdict.com/images/zoom_controls_excel_2007_2003.jpg
有没有人见过 Office 2007 风格缩放滑块的好模板?
如图所示 alt text http://www.theexceladdict.com/images/zoom_controls_excel_2007_2003.jpg
像这样的东西很容易创建。
首先创建一个按钮样式:
<Style x:Key="ZoomIncreaseDecreaseStyle" 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}">
<Grid>
<Ellipse Stroke="Gray" x:Name="Ellipse">
<Ellipse.Fill>
<RadialGradientBrush ... />
</Ellipse.Fill>
</Ellipse>
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center" />
</Grid>
<ControlTemplate.Trigger>
<Trigger Property="IsMouseOver" Value="true">
<Setter TargetName="Ellipse" Property="Fill">
<RadialGradientBrush ... />
</Setter>
</Trigger>
</ControlTemplate.Trigger>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style>
然后在 Blend 中修改 ControlTemplate(创建副本),并在 <Grid> 周围添加类似这样的内容:
<DockPanel>
<RepeatButton
DockPanel.Dock="Left"
Command="{x:Stastic Slider.DecreaseLarge}"
ControlTemplate="{StaticResource ZoomIncreaseDecreaseStyle}">
<Path Data="{StaticResource MinusGeometry}" />
</RepeatButton>
<RepeatButton
DockPanel.Dock="Right"
Command="{x:Stastic Slider.IncreaseLarge}"
ControlTemplate="{StaticResource ZoomIncreaseDecreaseStyle}">
<Path Data="{StaticResource PlusGeometry}" />
</RepeatButton>
<Grid>
...
您可以使用按钮笔触颜色、渐变填充以及 + 和 - 路径来获得所需的方式。我假设实际的 Office 2007 按钮受版权保护,因此您可能无法在不侵权的情况下将它们复制得太近。但这会给你一些视觉上非常相似的东西。