WPF 平面重复按钮(工具栏外观)
WPF Flat Repeat Button (ToolBar look)
我试图让 RepeatButton
的平面外观 w/o 覆盖 ControlTemplate
。使用常规 Button
您可以执行以下操作(但不能使用 RepeatButton
):
<Button BorderThickness="0" Style="{StaticResource {x:Static ToolBar.ButtonStyleKey}}">...
RepeatButton
或 ButtonBase
有类似的东西吗?我假设不是,因为如果你把 RepeatButton
放在 ToolBar
中,它看起来并不平坦。
除了覆盖 ControlTemplate
之外,是否有更好的方法让 RepeatButton
看起来更平坦?
这是以路径作为内容的平面 RepeatButton 样式的结果:
<Style x:Key="RepeatButtonFlat" TargetType="{x:Type RepeatButton}">
<Setter Property="OverridesDefaultStyle" Value="true"/>
<Setter Property="Focusable" Value="false"/>
<Setter Property="IsTabStop" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RepeatButton}">
<Border Background="Transparent" Height="14" Width="14">
<Path HorizontalAlignment="Center" VerticalAlignment="Center" Stretch="Uniform" Margin="2"
Data="{Binding Path=Content, RelativeSource={RelativeSource TemplatedParent}}" />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
示例用法:
<RepeatButton Style="{StaticResource ScrollBarLineButton}" Content="M0,0 L1,0 .5,-.5 Z"/>
我试图让 RepeatButton
的平面外观 w/o 覆盖 ControlTemplate
。使用常规 Button
您可以执行以下操作(但不能使用 RepeatButton
):
<Button BorderThickness="0" Style="{StaticResource {x:Static ToolBar.ButtonStyleKey}}">...
RepeatButton
或 ButtonBase
有类似的东西吗?我假设不是,因为如果你把 RepeatButton
放在 ToolBar
中,它看起来并不平坦。
除了覆盖 ControlTemplate
之外,是否有更好的方法让 RepeatButton
看起来更平坦?
这是以路径作为内容的平面 RepeatButton 样式的结果:
<Style x:Key="RepeatButtonFlat" TargetType="{x:Type RepeatButton}">
<Setter Property="OverridesDefaultStyle" Value="true"/>
<Setter Property="Focusable" Value="false"/>
<Setter Property="IsTabStop" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RepeatButton}">
<Border Background="Transparent" Height="14" Width="14">
<Path HorizontalAlignment="Center" VerticalAlignment="Center" Stretch="Uniform" Margin="2"
Data="{Binding Path=Content, RelativeSource={RelativeSource TemplatedParent}}" />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
示例用法:
<RepeatButton Style="{StaticResource ScrollBarLineButton}" Content="M0,0 L1,0 .5,-.5 Z"/>