EventTrigger Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Představuje trigger, který použije sadu akcí v reakci na událost.
public ref class EventTrigger : System::Windows::TriggerBase, System::Windows::Markup::IAddChild
[System.Windows.Markup.ContentProperty("Actions")]
public class EventTrigger : System.Windows.TriggerBase, System.Windows.Markup.IAddChild
[<System.Windows.Markup.ContentProperty("Actions")>]
type EventTrigger = class
inherit TriggerBase
interface IAddChild
Public Class EventTrigger
Inherits TriggerBase
Implements IAddChild
- Dědičnost
- Atributy
- Implementuje
Příklady
Tento příklad ukazuje, jak používat triggery událostí ve stylu k animaci MouseEnter a MouseLeave událostí objektu FrameworkElement. V tomto příkladu Style má nastavenou TargetType hodnotu Rectangle. Proto není nutné kvalifikovat MouseEnter názvy událostí s MouseLeave názvem třídy.
<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>
Poznámky
Trigger objekty mají objekty Setters, EnterActionsa ExitActions vlastnosti, které používají změny nebo akce na základě stavu určitých vlastností, zatímco EventTrigger objekty spouští sadu Actions , kdy dojde k zadané směrované události. Například můžete chtít použít EventTrigger ke spuštění sady animací, když je ukazatel myši přes určitý ovládací prvek uživatelského rozhraní (UI). Na rozdíl od Triggerfunkce nemá EventTrigger žádný koncept ukončení stavu, takže akce nebude vrácena, jakmile podmínka vyvolání události již není pravdivá.
Všimněte si, že při použití EventTrigger, musíte zvolit události, které neruší s vlastním chováním vašeho ovládacího prvku. Ovládací prvky, jako jsou nebo Button provádějí konkrétní akce s událostmi uživatelského vstupu, jako TextBox jsou kliknutí myší a události klávesnice. Pokud například stylujete tlačítko a pokusíte se nastavit MouseDown událost jako RoutedEventEventTriggerudálost , EventTrigger nikdy se nepoužije, protože událost se nejprve zpracuje tlačítkem. Místo toho můžete použít PreviewMouseDown událost nebo jinou událost.
Při použití datové vazby, pokud používáte TargetUpdated událost, musíte nastavit NotifyOnTargetUpdated hodnotu objektu Binding tak, aby true byla událost vyvolána.
Přidání podřízeného TriggerAction objektu EventTrigger do objektu jej implicitně přidá do objektu TriggerActionCollectionEventTrigger .
Konstruktory
| Name | Description |
|---|---|
| EventTrigger() |
Inicializuje novou instanci EventTrigger třídy. |
| EventTrigger(RoutedEvent) |
Inicializuje novou instanci EventTrigger třídy se zadanou událostí. |
Vlastnosti
| Name | Description |
|---|---|
| Actions |
Získá kolekci akcí, které se mají použít, když dojde k události. |
| DependencyObjectType |
DependencyObjectType Získá ten, který zabalí typ CLR této instance. (Zděděno od DependencyObject) |
| Dispatcher |
Dispatcher Získá toto DispatcherObject je přidružené. (Zděděno od DispatcherObject) |
| EnterActions |
Získá kolekci TriggerAction objektů, které se použijí při aktivaci objektu triggeru. Tato vlastnost se nevztahuje na EventTrigger třídu. (Zděděno od TriggerBase) |
| ExitActions |
Získá kolekci TriggerAction objektů, které se použijí, když se objekt triggeru stane neaktivní. Tato vlastnost se nevztahuje na EventTrigger třídu. (Zděděno od TriggerBase) |
| IsSealed |
Získá hodnotu, která označuje, zda je tato instance aktuálně zapečetěna (jen pro čtení). (Zděděno od DependencyObject) |
| RoutedEvent |
Získá nebo nastaví RoutedEvent , který aktivuje tuto aktivační událost. |
| SourceName |
Získá nebo nastaví název objektu s událostí, která aktivuje tento trigger. Používá se pouze triggery elementů nebo triggery šablony. |
Metody
| Name | Description |
|---|---|
| AddChild(Object) |
Přidá zadaný objekt do Actions kolekce aktuální události triggeru. |
| AddText(String) |
Tato metoda není podporována a výsledkem je výjimka. |
| CheckAccess() |
Určuje, zda volající vlákno má přístup k tomuto DispatcherObject. (Zděděno od DispatcherObject) |
| ClearValue(DependencyProperty) |
Vymaže místní hodnotu vlastnosti. Vlastnost, která se má vymazat, je určena identifikátorem DependencyProperty . (Zděděno od DependencyObject) |
| ClearValue(DependencyPropertyKey) |
Vymaže místní hodnotu vlastnosti jen pro čtení. Vlastnost, která má být vymazána, je určena parametrem DependencyPropertyKey. (Zděděno od DependencyObject) |
| CoerceValue(DependencyProperty) |
Převede hodnotu zadané vlastnosti závislosti. Toho se dosahuje vyvoláním jakékoli CoerceValueCallback funkce zadané v metadatech vlastností pro vlastnost závislosti, protože existuje ve volání DependencyObject. (Zděděno od DependencyObject) |
| Equals(Object) |
Určuje, zda je poskytnutá DependencyObject hodnota ekvivalentní aktuálnímu DependencyObject. (Zděděno od DependencyObject) |
| GetHashCode() |
Získá hash kód pro tento DependencyObject. (Zděděno od DependencyObject) |
| GetLocalValueEnumerator() |
Vytvoří specializovaný enumerátor pro určení, které vlastnosti závislosti mají místně nastavené hodnoty na tomto DependencyObject. (Zděděno od DependencyObject) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| GetValue(DependencyProperty) |
Vrátí aktuální efektivní hodnotu vlastnosti závislosti na této instanci objektu DependencyObject. (Zděděno od DependencyObject) |
| InvalidateProperty(DependencyProperty) |
Znovu vyhodnotí efektivní hodnotu pro zadanou vlastnost závislosti. (Zděděno od DependencyObject) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| OnPropertyChanged(DependencyPropertyChangedEventArgs) |
Vyvolána vždy, když byla aktualizována efektivní hodnota jakékoli vlastnosti závislosti na této DependencyObject vlastnosti. Konkrétní vlastnost závislosti, která se změnila, je hlášena v datech události. (Zděděno od DependencyObject) |
| ReadLocalValue(DependencyProperty) |
Vrátí místní hodnotu vlastnosti závislosti, pokud existuje. (Zděděno od DependencyObject) |
| SetCurrentValue(DependencyProperty, Object) |
Nastaví hodnotu vlastnosti závislosti beze změny jejího zdroje hodnot. (Zděděno od DependencyObject) |
| SetValue(DependencyProperty, Object) |
Nastaví místní hodnotu vlastnosti závislosti určenou jeho identifikátorem vlastnosti závislosti. (Zděděno od DependencyObject) |
| SetValue(DependencyPropertyKey, Object) |
Nastaví místní hodnotu vlastnosti závislosti jen pro čtení určenou identifikátorem DependencyPropertyKey vlastnosti závislosti. (Zděděno od DependencyObject) |
| ShouldSerializeActions() |
Vrátí zda serializace procesy mají serializovat efektivní hodnotu Actions vlastnosti na instancích této třídy. |
| ShouldSerializeProperty(DependencyProperty) |
Vrátí hodnotu, která určuje, zda procesy serializace mají serializovat hodnotu pro zadanou vlastnost závislosti. (Zděděno od DependencyObject) |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
| VerifyAccess() |
Vynucuje, že volající vlákno má přístup k tomuto DispatcherObject. (Zděděno od DispatcherObject) |
Explicitní implementace rozhraní
| Name | Description |
|---|---|
| IAddChild.AddChild(Object) |
Přidá podřízený objekt. |
| IAddChild.AddText(String) |
Přidá do objektu textový obsah uzlu. |