我有一个按钮模板,其中包含网格周围的边框。禁用该按钮后,边框仍显示为活动状态。
有没有办法在按钮禁用时淡出边框并在启用按钮时显示边框?
<Button.Template>
<ControlTemplate>
<Border BorderThickness="{Binding Path=BorderThickness, RelativeSource={RelativeSource Mode=FindAncestor,
AncestorType=Button}}" BorderBrush="{Binding Path=BorderBrush, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=Button}}"
Opacity="{Binding Path=BorderBrush, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=Button}}">
带下拉菜单的按钮是我的,其他是典型的按钮
你需要
一个触发器。 在这里,我在禁用时将边框设置为绿色。
<Button Content="test" Name="test" Height="20">
<Button.Template>
<ControlTemplate>
<Border BorderThickness="{Binding Path=BorderThickness, RelativeSource={RelativeSource Mode=FindAncestor,
AncestorType=Button}}" BorderBrush="{Binding Path=BorderBrush, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=Button}}"
Opacity="{Binding Path=BorderBrush, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=Button}}">
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="BorderBrush" Value="Green" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Button.Template>
</Button>