日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

WPF之触发器Triggers

發布時間:2023/12/3 asp.net 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 WPF之触发器Triggers 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Trigger觸發器:表示一個觸發器,它按單個條件應用屬性值或執行操作。

SourceName屬性:

獲取或設置與導致關聯的 setter 要應用的屬性對象的名稱。

Property屬性:

設置需要判斷的屬性。

Value屬性:

設置判斷該屬性是否等于該值,若等于執行setters操作

Setters屬性:

設置一組 Setter 對象,描述要應用當滿足指定的條件的操作。

EnterActions屬性:

獲取要在觸發器對象變為活動狀態時應用的 TriggerAction 對象的集合。

ExitActions屬性:

獲取要在觸發器對象變為非活動狀態時應用的 TriggerAction 對象的集合。
Trigger普通用法:

<Style x:Key="Triggers" TargetType="Button"><Style.Triggers><Trigger Property="IsPressed" Value="true"><Setter Property = "Foreground" Value="Green"/></Trigger></Style.Triggers> </Style>

Trigger動畫用法

<!--當IsPressed屬性為true,改變透明度達到閃動的效果 --> <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><!--停止閃動動畫--><Trigger.ExitActions><StopStoryboard BeginStoryboardName="playAnimation" /></Trigger.ExitActions></Trigger>

MultiTrigger 類:表示一個應用屬性值或一組條件滿足時執行操作的觸發器。

Conditions屬性:
設置 Condition 對象的集合。 對屬性更改時滿足所有集合中的條件時應用。
Setters屬性:
設置一組 Setter 對象,描述要應用當滿足指定的條件的操作。

<Style.Triggers><Trigger Property="IsEnabled" Value="false"><Setter Property="Background" Value="#EEEEEE" /></Trigger><MultiTrigger><MultiTrigger.Conditions><Condition Property="HasItems" Value="false" /><Condition Property="Width" Value="Auto" /></MultiTrigger.Conditions><Setter Property="MinWidth" Value="120"/></MultiTrigger> </Style.Triggers>

DataTrigger 類:它會在綁定數據滿足指定條件時應用屬性值或執行操作。

Binding屬性:

獲取或設置產生數據對象的屬性值的綁定。

Value屬性:

設置判斷該屬性是否等于該值,若等于執行setters操作

Setters屬性:

設置一組 Setter 對象,描述要應用當滿足指定的條件的操作。

EnterActions屬性:

獲取要在觸發器對象變為活動狀態時應用的 TriggerAction 對象的集合。

ExitActions屬性:

獲取要在觸發器對象變為非活動狀態時應用的 TriggerAction 對象的集合。
DataTrigger普通用法:

<Style TargetType="ListBoxItem"><Style.Triggers><DataTrigger Binding="{Binding Path=State}" Value="WA"><Setter Property="Foreground" Value="Red" /></DataTrigger> </Style.Triggers></Style>

MultiDataTrigger 類:表示一個應用屬性值或綁定的數據滿足一組條件時執行操作的觸發器。

Conditions屬性:
獲取 Condition 對象的集合。 對屬性值更改時滿足所有集合中的條件時應用。
Setters屬性:
獲取一套 Setter 對象,描述的屬性值時要應用的條件的所有 MultiTrigger 滿足。
MultiDataTrigger普通用法:

<Window.Resources><c:Places x:Key="PlacesData"/><Style TargetType="ListBoxItem"><Style.Triggers><DataTrigger Binding="{Binding Path=State}" Value="WA"><Setter Property="Foreground" Value="Red" /></DataTrigger> <MultiDataTrigger><MultiDataTrigger.Conditions><Condition Binding="{Binding Path=Name}" Value="Portland" /><Condition Binding="{Binding Path=State}" Value="OR" /></MultiDataTrigger.Conditions><Setter Property="Background" Value="Cyan" /></MultiDataTrigger></Style.Triggers></Style> <StackPanel><TextBlock FontSize="18" Margin="5" FontWeight="Bold"HorizontalAlignment="Center">Data Trigger Sample</TextBlock><ListBox Width="180" HorizontalAlignment="Center" Background="Honeydew"ItemsSource="{Binding Source={StaticResource PlacesData}}"/> </StackPanel>

EventTrigger 類:表示一個觸發器,該觸發器應用一組操作以響應一個事件。

RoutedEvent屬性:

獲取或設置將激活該觸發器的 RoutedEvent。

SourceName屬性:

獲取或設置對象的名稱,該對象具有激活此觸發器的事件。 僅元素觸發器或模板觸發器可使用此名稱。

Actions屬性:

獲取事件發生時要應用的操作的集合。

EnterActions屬性:

獲取要在觸發器對象變為活動狀態時應用的 TriggerAction 對象的集合。

ExitActions屬性:

獲取要在觸發器對象變為非活動狀態時應用的 TriggerAction 對象的集合。

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>

總結

以上是生活随笔為你收集整理的WPF之触发器Triggers的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。