DataTrigger 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í.
Třída, která představuje podmínku na libovolné vazbě, spolu se seznamem Setter objektů, které budou použity při splnění podmínky.
public ref class DataTrigger sealed : Microsoft::Maui::Controls::TriggerBase, Microsoft::Maui::Controls::Xaml::IValueProvider
[Microsoft.Maui.Controls.ContentProperty("Setters")]
[Microsoft.Maui.Controls.Xaml.AcceptEmptyServiceProvider]
public sealed class DataTrigger : Microsoft.Maui.Controls.TriggerBase, Microsoft.Maui.Controls.Xaml.IValueProvider
[<Microsoft.Maui.Controls.ContentProperty("Setters")>]
[<Microsoft.Maui.Controls.Xaml.AcceptEmptyServiceProvider>]
type DataTrigger = class
inherit TriggerBase
interface IValueProvider
Public NotInheritable Class DataTrigger
Inherits TriggerBase
Implements IValueProvider
- Dědičnost
- Atributy
- Implementuje
Poznámky
Třída DataTrigger je vhodná pro kontrolu hodnot v jiných ovládacích prvcích a také pro libovolnou vlastnost ovládacího prvku, do kterého byla přidána. To znamená, že výchozí kontext vazby je ovládací prvek, ke kterému byl přidán.
Následující příklad XML vyzve uživatele k zadání tajného kódu, což je "Barva textu je zelená". Když uživatel zadá "The", změní se text položky na červenou. Po dokončení tajného kódu se text popisku změní na zelenou. Kód se vrátí zpět na výchozí barvu, pokud uživatel pak upraví tajný kód. Tento příklad ukazuje, jak vytvořit vazbu k ohraničujícímu ovládacímu prvku (Entry from Entry) a k ovládacímu prvku arbitární (Entry from Label).
<?xml version="1.0" encoding="utf-8"?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:local="clr-namespace:TriggerDemo"
x:Class="TriggerDemo.TriggerDemoPage">
<StackLayout VerticalOptions="Center">
<Label Text="Can you tell me the secret?" VerticalOptions="Center" HorizontalOptions="Center">
<Label.Triggers>
<DataTrigger TargetType="Label"
Binding="{Binding Source={x:Reference checkEntry},
Path=Text}"
Value="The text color is green">
<Setter Property="TextColor" Value="Color.Green" />
</DataTrigger>
</Label.Triggers>
</Label>
<Entry Placeholder="Type the secret here." x:Name="checkEntry" VerticalOptions="Center" HorizontalOptions="Center">
<Entry.Triggers>
<DataTrigger TargetType="Entry"
Binding="{Binding Text}"
Value="The">
<Setter Property="TextColor" Value="Red" />
</DataTrigger>
</Entry.Triggers>
</Entry>
</StackLayout>
</ContentPage>
Konstruktory
DataTrigger(Type) |
Inicializuje novou DataTrigger instanci. |
Vlastnosti
Binding |
Získá nebo nastaví vazbu, jejíž hodnota bude porovnána Value s určením, kdy vyvolat setters. |
BindingContext |
Získá nebo nastaví objekt obsahující vlastnosti, které budou cílem vázané vlastnosti, které patří do tohoto BindableObject. Toto je vlastnost s možností vazby. (Zděděno od BindableObject) |
Dispatcher |
Získá dispečer, který byl k dispozici při vytvoření tohoto objektu bindable, jinak se pokusí najít nejbližší dostupný dispečer (pravděpodobně okno/aplikace). (Zděděno od BindableObject) |
EnterActions |
Získá seznam TriggerAction objektů, které budou vyvolány při splnění podmínky triggeru. Ignorováno pro EventTrigger třídu. (Zděděno od TriggerBase) |
ExitActions |
Získá seznam TriggerAction objektů, které budou vyvolány po splnění podmínky triggeru. Ignorováno pro EventTrigger třídu. (Zděděno od TriggerBase) |
IsSealed |
Získá hodnotu, která označuje, zda je aktivační událost zapečetěna. (Zděděno od TriggerBase) |
Setters |
Získá seznam Setter objektů, které budou použity při vazbě, která je pojmenována Binding vlastností se rovná Value. |
TargetType |
Typ objektu, ke kterému lze tento TriggerBase objekt připojit. (Zděděno od TriggerBase) |
Value |
Získá nebo nastaví hodnotu vazby pojmenované Binding vlastností, která způsobí použití setters. |
Metody
ApplyBindings() |
Použije všechny aktuální vazby na BindingContext. (Zděděno od BindableObject) |
ClearValue(BindableProperty) |
Vymaže libovolnou hodnotu, která byla dříve nastavena pro vlastnost bindable. (Zděděno od BindableObject) |
ClearValue(BindablePropertyKey) |
Vymaže libovolnou hodnotu, která byla dříve nastavena pro vlastnost bindable identifikovanou jeho klíčem. (Zděděno od BindableObject) |
CoerceValue(BindableProperty) |
Převede hodnotu zadané vlastnosti bindable. To se provádí vyvoláním BindableProperty.CoerceValueDelegate zadané bindable vlastnosti. (Zděděno od BindableObject) |
CoerceValue(BindablePropertyKey) |
Převede hodnotu zadané vlastnosti bindable. To se provádí vyvoláním BindableProperty.CoerceValueDelegate zadané bindable vlastnosti. (Zděděno od BindableObject) |
GetValue(BindableProperty) |
Vrátí hodnotu obsaženou v dané vlastnosti bindable. (Zděděno od BindableObject) |
IsSet(BindableProperty) |
Určuje, zda existuje vlastnost bindable a má nastavenou hodnotu. (Zděděno od BindableObject) |
OnBindingContextChanged() |
BindingContextChanged Vyvolá událost. (Zděděno od BindableObject) |
OnPropertyChanged(String) |
PropertyChanged Vyvolá událost. (Zděděno od BindableObject) |
OnPropertyChanging(String) |
PropertyChanging Vyvolá událost. (Zděděno od BindableObject) |
RemoveBinding(BindableProperty) |
Odebere dříve nastavenou vazbu z vlastnosti bindable. (Zděděno od BindableObject) |
SetBinding(BindableProperty, BindingBase) |
Přiřadí vazbu k vlastnosti s možností vazby. (Zděděno od BindableObject) |
SetValue(BindableProperty, Object) |
Nastaví hodnotu zadané vlastnosti bindable. (Zděděno od BindableObject) |
SetValue(BindablePropertyKey, Object) |
Nastaví hodnotu zadané vlastnosti bindable. (Zděděno od BindableObject) |
UnapplyBindings() |
Odebere všechny aktuální vazby z aktuálního kontextu. (Zděděno od BindableObject) |
Událost
BindingContextChanged |
Nastane, když se změní hodnota BindingContext vlastnosti. (Zděděno od BindableObject) |
PropertyChanged |
Nastane, když se změní hodnota vlastnosti. (Zděděno od BindableObject) |
PropertyChanging |
Nastane při změně hodnoty vlastnosti. (Zděděno od BindableObject) |
Explicitní implementace rozhraní
IDynamicResourceHandler.SetDynamicResource(BindableProperty, String) |
Třída, která představuje podmínku na libovolné vazbě, spolu se seznamem Setter objektů, které budou použity při splnění podmínky. (Zděděno od BindableObject) |
IValueProvider.ProvideValue(IServiceProvider) |
Třída, která představuje podmínku na libovolné vazbě, spolu se seznamem Setter objektů, které budou použity při splnění podmínky. |
Metody rozšíření
GetPropertyIfSet<T>(BindableObject, BindableProperty, T) |
Třída, která představuje podmínku na libovolné vazbě, spolu se seznamem Setter objektů, které budou použity při splnění podmínky. |
SetAppTheme<T>(BindableObject, BindableProperty, T, T) |
Třída, která představuje podmínku na libovolné vazbě, spolu se seznamem Setter objektů, které budou použity při splnění podmínky. |
SetAppThemeColor(BindableObject, BindableProperty, Color, Color) |
Třída, která představuje podmínku na libovolné vazbě, spolu se seznamem Setter objektů, které budou použity při splnění podmínky. |
SetBinding(BindableObject, BindableProperty, String, BindingMode, IValueConverter, String) |
Vytvoří a použije vazbu na vlastnost. |
SetBinding<TSource,TProperty>(BindableObject, BindableProperty, Func<TSource,TProperty>, BindingMode, IValueConverter, Object, String, Object, Object, Object) |
Vytvoří vazbu mezi vlastností zdrojového objektu a vlastností cílového objektu. |