WPF中样式继承和简单的触发器
程序员文章站
2022-06-08 16:29:30
...
找了WPF的资料学习,碰到一些零散的知识点,在此记录,以防忘记。
XAML中样式可以继承,用Style的BasedOn属性,下列代码:
<Window.Resources>
<Style x:Key="fatherStyle" TargetType="Button">
<Setter Property="Width" Value="100"/>
<Setter Property="Height" Value="80"/>
<Setter Property="Background" Value="AliceBlue"/>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Foreground" Value="Red"/>
<Setter Property="FontSize" Value="50"/>
</Trigger>
</Style.Triggers>
</Style>
<Style x:Key="childStyle" TargetType="Button" BasedOn="{StaticResource fatherStyle}">
<Setter Property="Background" Value="Black"/>
<Style.Triggers>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsMouseOver" Value="True"/>
<Condition Property="IsFoused" Value="True"/>
</MultiTrigger.Conditions>
<MultiTrigger.Setters>
<Setter Property="FontSize" Value="100"/>
</MultiTrigger.Setters>
</MultiTrigger>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Foreground" Value="Red"/>
<Setter Property="FontSize" Value="50"/>
</Trigger>
</Style.Triggers>
</Style>
</Window.Resources>
其中Style.Triggers是触发器,直接用Trigger进行简单的事件触发, 为带多个条件的触发器,<MultiTrigger.Conditions>为条件,<MultiTrigger.Setters>设置触发的表现内容。