DataTrigger Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Rastgele bağlamada koşulu temsil eden sınıf, Setter koşul karşılandığında uygulanacak nesnelerin bir listesi.
[Xamarin.Forms.ContentProperty("Setters")]
[Xamarin.Forms.Xaml.AcceptEmptyServiceProvider]
public sealed class DataTrigger : Xamarin.Forms.TriggerBase, Xamarin.Forms.Xaml.IValueProvider
type DataTrigger = class
inherit TriggerBase
interface IValueProvider
- Devralma
- Öznitelikler
- Uygulamalar
Açıklamalar
DataTriggerSınıfı, diğer denetimlerin değerlerinin yanı sıra eklendiği denetimdeki herhangi bir özelliği denetlemek için uygundur. Diğer bir deyişle, varsayılan bağlama bağlamı, eklendiği denetimdir.
Aşağıdaki XML örneği, kullanıcıdan gizli dizi ("metin rengi yeşil") yazmayı ister. Kullanıcı "öğesini" yazmışsa, giriş metni rengi kırmızı olarak değiştirir. Kullanıcı gizli dizi tamamlandığında, etiket metni yeşile dönüşür. Kullanıcı parolayı düzenlerse, kod varsayılan renge geri açılır. Bu örnek, kapsayan denetimin (girişten giriş) ve bir aracı denetimin (etiketten giriş) nasıl bağlanacağını gösterir.
<?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>
Oluşturucular
| DataTrigger(Type) |
Yeni bir DataTrigger örneği başlatır. |
Özellikler
| Binding |
ValueAyarlayıcılarının ne zaman çağırılacağını belirleyen, değerine Karşılaştırılacak bağlamayı alır veya ayarlar. |
| BindingContext |
Buna ait olan bağlı özellikler tarafından hedeflenecek özellikleri içeren nesneyi alır veya ayarlar BindableObject . (Devralındığı yer: BindableObject) |
| Dispatcher | (Devralındığı yer: BindableObject) |
| EnterActions |
TriggerActionTetikleyici koşulu karşılandığında çağrılacak nesne listesini alır. Sınıf için yoksayıldı EventTrigger . (Devralındığı yer: TriggerBase) |
| ExitActions |
TriggerActionTetikleyici koşulu artık karşılanmazsa çağrılacak nesne listesini alır. Sınıf için yoksayıldı EventTrigger . (Devralındığı yer: TriggerBase) |
| IsSealed |
Tetikleyicinin korumalı olup olmadığını gösteren bir değer alır. (Devralındığı yer: TriggerBase) |
| Setters |
SetterÖzelliği tarafından adlandırılan bağlama şuna eşit olduğunda uygulanacak nesne listesini alır Binding Value . |
| TargetType |
Bu TriggerBase nesnenin iliştirilebilecek nesne türü. (Devralındığı yer: TriggerBase) |
| Value |
, Binding Ayarlayıcılarının uygulanmasına neden olacak şekilde, özelliği tarafından adlandırılan bağlamanın değerini alır veya ayarlar. |
Yöntemler
| ApplyBindings() |
Bağlamaları uygulamasına uygulayın BindingContext . (Devralındığı yer: BindableObject) |
| ClearValue(BindableProperty) |
İçin tarafından ayarlanan her değeri SetValue temizler |
| ClearValue(BindablePropertyKey) |
Tarafından tanımlanan özelliği için tarafından ayarlanan herhangi bir değeri temizler SetValue |
| CoerceValue(BindableProperty) | (Devralındığı yer: BindableObject) |
| CoerceValue(BindablePropertyKey) | (Devralındığı yer: BindableObject) |
| GetValue(BindableProperty) |
Bindadbleproperty içinde bulunan değeri döndürür. (Devralındığı yer: BindableObject) |
| GetValues(BindableProperty, BindableProperty) |
Kullanımdan kalktı.
Xamarin. Forms platformu tarafından dahili kullanım için. (Devralındığı yer: BindableObject) |
| GetValues(BindableProperty, BindableProperty, BindableProperty) |
Kullanımdan kalktı.
Xamarin. Forms platformu tarafından dahili kullanım için. (Devralındığı yer: BindableObject) |
| IsSet(BindableProperty) |
|
| OnBindingContextChanged() |
BindingContext değiştiğinde bir eylem yürütmek için bu yöntemi geçersiz kılın. (Devralındığı yer: BindableObject) |
| OnPropertyChanged(String) |
Bir özellikte değişiklik olduğunu bildirmek için bu yöntemi bir alt sınıftan çağırın. (Devralındığı yer: BindableObject) |
| OnPropertyChanging(String) |
Bir özellik üzerinde bir değişikliğin gerçekleşmesini bildirmek için bu yöntemi bir alt sınıftan çağırın. (Devralındığı yer: BindableObject) |
| RemoveBinding(BindableProperty) |
Daha önce ayarlanan bağlamayı kaldırır. (Devralındığı yer: BindableObject) |
| SetBinding(BindableProperty, BindingBase) |
Bir özelliğe bağlama atar. (Devralındığı yer: BindableObject) |
| SetValue(BindableProperty, Object) |
Belirtilen özelliğin değerini ayarlar. (Devralındığı yer: BindableObject) |
| SetValue(BindablePropertyKey, Object) |
PropertyKey değerini ayarlar. (Devralındığı yer: BindableObject) |
| SetValueCore(BindableProperty, Object, SetValueFlags) |
Xamarin. Forms platformu tarafından dahili kullanım için. (Devralındığı yer: BindableObject) |
| UnapplyBindings() |
Daha önce ayarlanan tüm bağlamalar için geçerli değildir. (Devralındığı yer: BindableObject) |
etkinlik
| BindingContextChanged |
Özellik her değiştiğinde tetiklenir BindingContext . (Devralındığı yer: BindableObject) |
| PropertyChanged |
Bir özellik değiştiğinde tetiklenir. (Devralındığı yer: BindableObject) |
| PropertyChanging |
Bir özellik değiştirmek üzere olduğunda tetiklenir. (Devralındığı yer: BindableObject) |
Belirtik Arabirim Kullanımları
| IDynamicResourceHandler.SetDynamicResource(BindableProperty, String) |
Xamarin. Forms platformu tarafından dahili kullanım için. (Devralındığı yer: BindableObject) |
| IValueProvider.ProvideValue(IServiceProvider) |
XAML altyapısının iç kullanımı için. |
Uzantı Metotları
| GetPropertyIfSet<T>(BindableObject, BindableProperty, T) | |
| SetAppThemeColor(BindableObject, BindableProperty, Color, Color) | |
| SetBinding(BindableObject, BindableProperty, String, BindingMode, IValueConverter, String) |
Bir özelliğe bağlama oluşturur ve uygular. |
| SetBinding<TSource>(BindableObject, BindableProperty, Expression<Func<TSource,Object>>, BindingMode, IValueConverter, String) |
Kullanımdan kalktı.
Bir ifadeden bir bağlama oluşturur ve uygular. |
| SetOnAppTheme<T>(BindableObject, BindableProperty, T, T) | |