gpt4 book ai didi

c# - 使用自定义模板和触发器设置 Button 的 BorderBrush

转载 作者:太空宇宙 更新时间:2023-11-03 13:16:51 24 4
gpt4 key购买 nike

我正在尝试更改自定义模板中按钮的 borderbrush 属性。使用此方法更改鼠标悬停时的背景效果很好,但是 BorderBrush?纳达。

这是我的代码:

<Style x:Key="ImageButtonStyle" TargetType="Button">
<Setter Property="OverridesDefaultStyle" Value="True"/>
<Setter Property="Margin" Value="2"/>
<Setter Property="Background" Value="LightGray"/>
<Setter Property="BorderBrush" Value="Blue"/>
<Setter Property="BorderThickness" Value="3"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border Name="border" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" Margin="1,0,0,-9">
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0,1,1,0" Height="94" Width="101"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="border" Property="BorderBrush" Value="Red"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>

编辑:实际上甚至连开头设置的蓝色边框都没有出现,所以这可能是相关的。

如果有任何重要性,这里是使用样式的地方。

<Button Margin="191,10,138,109" Style="{StaticResource ImageButtonStyle}">
<Image/>
</Button>

最佳答案

您创建样式将 BorderThickness 设置为 3,但随后覆盖默认可视化树,因此不考虑此厚度。添加这个

 BorderThickness="{TemplateBinding BorderThickness}" 

为了看到它。

关于c# - 使用自定义模板和触发器设置 Button 的 BorderBrush,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25786714/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com