WPF里面ControlTemplate的trigger触发问题

fenix124 2010-03-10 04:06:24

<ControlTemplate TargetType="Button" x:Key="buttonTemplate">
<Border x:Name="border" CornerRadius="5" BorderThickness="2" BorderBrush="Black">
<ContentPresenter VerticalAlignment="Center" HorizontalAlignment="Center" Margin="{TemplateBinding Padding}"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="true">
<Setter Property="Foreground" Value="Yellow"></Setter>
<Setter TargetName="border" Property="BorderBrush" Value="Green"/>
</Trigger>
<Trigger Property="ButtonBase.IsPressed" Value="True">
<Setter TargetName="border" Property="BorderBrush" Value="AliceBlue"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>


按下按钮的时候边框直接消失了,为什么不出现浅蓝色的边框?
...全文
460 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
fenix124 2010-03-12
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 namhyuk 的回复:]
至少

<Border x:Name="border" CornerRadius="5" BorderThickness="2" BorderBrush="{TemplateBinding BorderBrush}">

BorderBrush也TemplateBinding吧。。。
[/Quote]

我试了的有问题...
namhyuk 2010-03-10
  • 打赏
  • 举报
回复
至少

<Border x:Name="border" CornerRadius="5" BorderThickness="2" BorderBrush="{TemplateBinding BorderBrush}">

BorderBrush也TemplateBinding吧。。。
fenix124 2010-03-10
  • 打赏
  • 举报
回复
我晕,果然换个颜色就看到了。
namhyuk 2010-03-10
  • 打赏
  • 举报
回复
嘿嘿,是看不清吧,你把AliceBlue改成Red之类的试试:-)
RexZheng 2010-03-10
  • 打赏
  • 举报
回复
是显示器问题吧?你把AliceBlue改成Blue试试,AliceBlue比较淡,显示器太亮有可能看不出来。
fenix124 2010-03-10
  • 打赏
  • 举报
回复
感谢1楼顶帖,字数太短
平生我自如 2010-03-10
  • 打赏
  • 举报
回复
学习一下!
内容太短~~~~~~~

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧