DataTrigger Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Класс, представляющий условие произвольной привязки, а также список объектов Setter, которые будут применяться при выполнении условия.
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
- Наследование
- Атрибуты
- Реализации
Комментарии
Класс DataTrigger подходит для проверки значений на других элементах управления, а также любого свойства элемента управления, к которому он был добавлен. То есть контекст привязки по умолчанию — это элемент управления, к которому он был добавлен.
В приведенном ниже примере XML пользователь запрашивает ввод в секрет, т. е. "Цвет текста является зеленым". Когда пользователь ввел "The", текст записи изменяет цвет на красный. Когда пользователь завершает секрет, текст метки становится зеленым. Код возвращается к цвету по умолчанию, если пользователь изменяет секрет. В этом примере показано, как привязаться к включающем элементу управления (Запись из записи) и к арбитариному элементу управления (Запись из метки)
<?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>
Конструкторы
DataTrigger(Type) |
Инициализирует новый экземпляр класса DataTrigger. |
Свойства
Binding |
Возвращает или задает привязку, значение которой будет сравниваться с Value для определения того, когда должны вызываться методы задания. |
BindingContext |
Возвращает или задает объект, содержащий свойства, предназначенные для связанных свойств, принадлежащих этому BindableObject. Это свойство может быть привязано. (Унаследовано от BindableObject) |
Dispatcher |
Возвращает диспетчер, который был доступен при создании этого привязываемого объекта, в противном случае пытается найти ближайший доступный диспетчер (вероятно, окно или приложение). (Унаследовано от BindableObject) |
EnterActions |
Возвращает список объектов TriggerAction, которые будут вызываться при соблюдении условия триггера. Игнорируется для класса EventTrigger. (Унаследовано от TriggerBase) |
ExitActions |
Возвращает список объектов TriggerAction, которые будут вызываться, когда условие триггера больше не соблюдается. Игнорируется для класса EventTrigger. (Унаследовано от TriggerBase) |
IsSealed |
Возвращает значение, указывающее, является ли триггер запечатанным. (Унаследовано от TriggerBase) |
Setters |
Возвращает список Setter объектов, которые будут применены, когда привязка, именуемая Binding свойством, становится равной Value. |
TargetType |
Тип объекта, к которому можно ли присоединить объект TriggerBase. (Унаследовано от TriggerBase) |
Value |
Возвращает или задает значение привязки, имя которой указано в свойстве Binding, которое вызывает применение методов задания. |
Методы
ApplyBindings() |
Применяет все текущие привязки к BindingContext. (Унаследовано от BindableObject) |
ClearValue(BindableProperty) |
Очищает любое значение, заданное ранее для привязываемого свойства. (Унаследовано от BindableObject) |
ClearValue(BindablePropertyKey) |
Очищает любое значение, заданное ранее для привязываемого свойства, идентифицируемого ключом. (Унаследовано от BindableObject) |
CoerceValue(BindableProperty) |
Принуждается значение указанного привязываемого свойства. Это делается путем вызова BindableProperty.CoerceValueDelegate указанного привязываемого свойства. (Унаследовано от BindableObject) |
CoerceValue(BindablePropertyKey) |
Принуждается значение указанного привязываемого свойства. Это делается путем вызова BindableProperty.CoerceValueDelegate указанного привязываемого свойства. (Унаследовано от BindableObject) |
GetValue(BindableProperty) |
Возвращает значение, содержащееся в заданном привязываемом свойстве. (Унаследовано от BindableObject) |
IsSet(BindableProperty) |
Определяет, существует ли привязываемое свойство и имеет набор значений. (Унаследовано от BindableObject) |
OnBindingContextChanged() |
Вызывает событие BindingContextChanged. (Унаследовано от BindableObject) |
OnPropertyChanged(String) |
Вызывает событие PropertyChanged. (Унаследовано от BindableObject) |
OnPropertyChanging(String) |
Вызывает событие PropertyChanging. (Унаследовано от BindableObject) |
RemoveBinding(BindableProperty) |
Удаляет ранее заданную привязку из привязываемого свойства. (Унаследовано от BindableObject) |
SetBinding(BindableProperty, BindingBase) |
Назначает привязку привязываемому свойству. (Унаследовано от BindableObject) |
SetValue(BindableProperty, Object) |
Задает значение указанного привязываемого свойства. (Унаследовано от BindableObject) |
SetValue(BindablePropertyKey, Object) |
Задает значение указанного привязываемого свойства. (Унаследовано от BindableObject) |
UnapplyBindings() |
Удаляет все текущие привязки из текущего контекста. (Унаследовано от BindableObject) |
События
BindingContextChanged |
Происходит при изменении значения свойства BindingContext. (Унаследовано от BindableObject) |
PropertyChanged |
Появляется при изменении значения свойства. (Унаследовано от BindableObject) |
PropertyChanging |
Происходит при изменении значения свойства. (Унаследовано от BindableObject) |
Явные реализации интерфейса
IDynamicResourceHandler.SetDynamicResource(BindableProperty, String) |
Класс, представляющий условие произвольной привязки, а также список объектов Setter, которые будут применяться при выполнении условия. (Унаследовано от BindableObject) |
IValueProvider.ProvideValue(IServiceProvider) |
Класс, представляющий условие произвольной привязки, а также список объектов Setter, которые будут применяться при выполнении условия. |
Методы расширения
GetPropertyIfSet<T>(BindableObject, BindableProperty, T) |
Класс, представляющий условие произвольной привязки, а также список объектов Setter, которые будут применяться при выполнении условия. |
SetAppTheme<T>(BindableObject, BindableProperty, T, T) |
Класс, представляющий условие произвольной привязки, а также список объектов Setter, которые будут применяться при выполнении условия. |
SetAppThemeColor(BindableObject, BindableProperty, Color, Color) |
Класс, представляющий условие произвольной привязки, а также список объектов Setter, которые будут применяться при выполнении условия. |
SetBinding(BindableObject, BindableProperty, String, BindingMode, IValueConverter, String) |
Создает и применяет привязку к свойству. |
SetBinding<TSource,TProperty>(BindableObject, BindableProperty, Func<TSource,TProperty>, BindingMode, IValueConverter, Object, String, Object, Object, Object) |
Создает привязку между свойством исходного объекта и свойством целевого объекта. |