1、Style中的Trigger
Trigger:触发器,即当某些条件满足时会触发一个行为。Trigger是最基本的触发器,Trigger也有Property和Value这两个属性,Property是Trigger的属性名称,Value是触发条件。
Trigger类还有Setters属性,此属性值是一组Setter,一旦触发条件被满足,这组Setter设定的属性值就会被应用,触发条件不再满足后,各属性值会被还原。
本实例是针对CheckBox的Style,当CheckBox的IsChecked属性值为True时,字体颜色和大小会发生改变,如代码1所示。图1为IsChecked属性值为False时的CheckBox,图2为 IsChecked 属性值为True时的CheckBox。
代码1:
<Window.Resources>
<Style TargetType="CheckBox">
<Style.Triggers>
<Trigger Property="IsChecked" Value="True">
<Trigger.Setters>
<Setter Property="FontSize" Value="30"></Setter>
<Setter Property="Foreground" Value="Orange"></Setter>
</Trigger.Setters>
</Trigger>
</Style.Triggers>
</Style>
</Window.Resources>
<StackPanel>
<CheckBox Content="海客谈瀛洲"></CheckBox>
<CheckBox Content="烟涛微茫信难求"></CheckBox>
<CheckBox Content="越人语天姥"></CheckBox>
<CheckBox Content="云霞明灭或可睹"></CheckBox>
</StackPanel>
图1 图2
此句代码为设置 Trigger 的触发条件。
<Trigger Property="IsChecked" Value="True">
此句为触发条件满足后,发生的改变。字体大小变为30,字体颜色变为"Orange"。
<Trigger.Setters>
<Setter Property="FontSize" Value="30"></Setter>
<Setter Property="Foreground" Value="Orange"></Setter>
</Trigger.Setters>