WPF之触发器Triggers
Trigger觸發(fā)器:表示一個(gè)觸發(fā)器,它按單個(gè)條件應(yīng)用屬性值或執(zhí)行操作。
SourceName屬性:
獲取或設(shè)置與導(dǎo)致關(guān)聯(lián)的 setter 要應(yīng)用的屬性對(duì)象的名稱。
Property屬性:
設(shè)置需要判斷的屬性。
Value屬性:
設(shè)置判斷該屬性是否等于該值,若等于執(zhí)行setters操作
Setters屬性:
設(shè)置一組 Setter 對(duì)象,描述要應(yīng)用當(dāng)滿足指定的條件的操作。
EnterActions屬性:
獲取要在觸發(fā)器對(duì)象變?yōu)榛顒?dòng)狀態(tài)時(shí)應(yīng)用的 TriggerAction 對(duì)象的集合。
ExitActions屬性:
獲取要在觸發(fā)器對(duì)象變?yōu)榉腔顒?dòng)狀態(tài)時(shí)應(yīng)用的 TriggerAction 對(duì)象的集合。
Trigger普通用法:
Trigger動(dòng)畫用法
<!--當(dāng)IsPressed屬性為true,改變透明度達(dá)到閃動(dòng)的效果 --> <Trigger Property="IsPressed" Value="true"><Trigger.EnterActions><BeginStoryboard x:Name="playAnimation"><Storyboard Storyboard.TargetName="FocusVisual" Storyboard.TargetProperty="Opacity"><DoubleAnimation AutoReverse="True" RepeatBehavior="Forever" To="1" Duration="0:0:1" /></Storyboard></BeginStoryboard></Trigger.EnterActions><!--停止閃動(dòng)動(dòng)畫--><Trigger.ExitActions><StopStoryboard BeginStoryboardName="playAnimation" /></Trigger.ExitActions></Trigger>MultiTrigger 類:表示一個(gè)應(yīng)用屬性值或一組條件滿足時(shí)執(zhí)行操作的觸發(fā)器。
Conditions屬性:
設(shè)置 Condition 對(duì)象的集合。 對(duì)屬性更改時(shí)滿足所有集合中的條件時(shí)應(yīng)用。
Setters屬性:
設(shè)置一組 Setter 對(duì)象,描述要應(yīng)用當(dāng)滿足指定的條件的操作。
DataTrigger 類:它會(huì)在綁定數(shù)據(jù)滿足指定條件時(shí)應(yīng)用屬性值或執(zhí)行操作。
Binding屬性:
獲取或設(shè)置產(chǎn)生數(shù)據(jù)對(duì)象的屬性值的綁定。
Value屬性:
設(shè)置判斷該屬性是否等于該值,若等于執(zhí)行setters操作
Setters屬性:
設(shè)置一組 Setter 對(duì)象,描述要應(yīng)用當(dāng)滿足指定的條件的操作。
EnterActions屬性:
獲取要在觸發(fā)器對(duì)象變?yōu)榛顒?dòng)狀態(tài)時(shí)應(yīng)用的 TriggerAction 對(duì)象的集合。
ExitActions屬性:
獲取要在觸發(fā)器對(duì)象變?yōu)榉腔顒?dòng)狀態(tài)時(shí)應(yīng)用的 TriggerAction 對(duì)象的集合。
DataTrigger普通用法:
MultiDataTrigger 類:表示一個(gè)應(yīng)用屬性值或綁定的數(shù)據(jù)滿足一組條件時(shí)執(zhí)行操作的觸發(fā)器。
Conditions屬性:
獲取 Condition 對(duì)象的集合。 對(duì)屬性值更改時(shí)滿足所有集合中的條件時(shí)應(yīng)用。
Setters屬性:
獲取一套 Setter 對(duì)象,描述的屬性值時(shí)要應(yīng)用的條件的所有 MultiTrigger 滿足。
MultiDataTrigger普通用法:
EventTrigger 類:表示一個(gè)觸發(fā)器,該觸發(fā)器應(yīng)用一組操作以響應(yīng)一個(gè)事件。
RoutedEvent屬性:
獲取或設(shè)置將激活該觸發(fā)器的 RoutedEvent。
SourceName屬性:
獲取或設(shè)置對(duì)象的名稱,該對(duì)象具有激活此觸發(fā)器的事件。 僅元素觸發(fā)器或模板觸發(fā)器可使用此名稱。
Actions屬性:
獲取事件發(fā)生時(shí)要應(yīng)用的操作的集合。
EnterActions屬性:
獲取要在觸發(fā)器對(duì)象變?yōu)榛顒?dòng)狀態(tài)時(shí)應(yīng)用的 TriggerAction 對(duì)象的集合。
ExitActions屬性:
獲取要在觸發(fā)器對(duì)象變?yōu)榉腔顒?dòng)狀態(tài)時(shí)應(yīng)用的 TriggerAction 對(duì)象的集合。
EventTrigger普通用法:
<Style TargetType="Rectangle"><Setter Property="Width" Value="50" /><Setter Property="Height" Value="50" /><Setter Property="Margin" Value="20" /><Setter Property="HorizontalAlignment" Value="Left" /><Style.Triggers><EventTrigger RoutedEvent="MouseEnter"><BeginStoryboard><Storyboard><DoubleAnimation To="300" Duration="0:0:1.5" AccelerationRatio="0.10" DecelerationRatio="0.25" Storyboard.TargetProperty="(Canvas.Width)" /></Storyboard></BeginStoryboard></EventTrigger><EventTrigger RoutedEvent="MouseLeave"><BeginStoryboard><Storyboard><DoubleAnimation Duration="0:0:1.5" AccelerationRatio="0.10" DecelerationRatio="0.25" Storyboard.TargetProperty="(Canvas.Width)" /></Storyboard></BeginStoryboard></EventTrigger></Style.Triggers> </Style>總結(jié)
以上是生活随笔為你收集整理的WPF之触发器Triggers的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Interaction triggers
- 下一篇: WPF 触发器Triggers