<Type Name="DataTrigger" FullName="Microsoft.Maui.Controls.DataTrigger">
  <TypeSignature Language="C#" Value="public sealed class DataTrigger : Microsoft.Maui.Controls.TriggerBase, Microsoft.Maui.Controls.Xaml.IValueProvider" />
  <TypeSignature Language="ILAsm" Value=".class public auto ansi sealed beforefieldinit DataTrigger extends Microsoft.Maui.Controls.TriggerBase implements class Microsoft.Maui.Controls.Xaml.IValueProvider" />
  <TypeSignature Language="DocId" Value="T:Microsoft.Maui.Controls.DataTrigger" />
  <TypeSignature Language="F#" Value="type DataTrigger = class&#xA;    inherit TriggerBase&#xA;    interface IValueProvider" />
  <AssemblyInfo>
    <AssemblyName>Microsoft.Maui.Controls.Core</AssemblyName>
    <AssemblyVersion>0.0.0.0</AssemblyVersion>
    <AssemblyVersion>1.3.0.0</AssemblyVersion>
    <AssemblyVersion>1.4.0.0</AssemblyVersion>
    <AssemblyVersion>1.5.0.0</AssemblyVersion>
    <AssemblyVersion>2.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <Base>
    <BaseTypeName>Microsoft.Maui.Controls.TriggerBase</BaseTypeName>
  </Base>
  <Interfaces>
    <Interface>
      <InterfaceName>Microsoft.Maui.Controls.Xaml.IValueProvider</InterfaceName>
    </Interface>
  </Interfaces>
  <Attributes>
    <Attribute>
      <AttributeName>Microsoft.Maui.Controls.ContentProperty("Setters")</AttributeName>
    </Attribute>
    <Attribute>
      <AttributeName>Microsoft.Maui.Controls.Xaml.AcceptEmptyServiceProvider</AttributeName>
    </Attribute>
  </Attributes>
  <Docs>
    <summary>Class that represents a condition on an arbitrary binding, along with a list of <see cref="T:Microsoft.Maui.Controls.Setter" /> objects that will be applied when the condition is met.</summary>
    <remarks>
      <para>The <see cref="T:Microsoft.Maui.Controls.DataTrigger" /> class is suitable for checking values on other controls, as well as any property on the control to which it has been added. That is, its default binding context is the control to which it has been added.</para>
      <example>
        <para>The XML example below prompts the user to type in the secret, which is, "The text color is green". When the user has typed "The", the Entry text changes color to red. When the user completes the secret, the Label text turns green. The code is turned back to the default color if the user then edits the secret. This example shows how to bind to the enclosing control (Entry from Entry), and to an arbitary control (Entry from Label)</para>
        <code lang="XML"><![CDATA[
              <?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>
]]></code>
      </example>
    </remarks>
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public DataTrigger (Type targetType);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class System.Type targetType) cil managed" />
      <MemberSignature Language="DocId" Value="M:Microsoft.Maui.Controls.DataTrigger.#ctor(System.Type)" />
      <MemberSignature Language="F#" Value="new Microsoft.Maui.Controls.DataTrigger : Type -&gt; Microsoft.Maui.Controls.DataTrigger" Usage="new Microsoft.Maui.Controls.DataTrigger targetType" />
      <MemberType>Constructor</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>0.0.0.0</AssemblyVersion>
        <AssemblyVersion>1.3.0.0</AssemblyVersion>
        <AssemblyVersion>1.4.0.0</AssemblyVersion>
        <AssemblyVersion>1.5.0.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyName>Microsoft.Maui.Controls.Core</AssemblyName>
      </AssemblyInfo>
      <Parameters>
        <Parameter Name="targetType" Type="System.Type">
          <Attributes>
            <Attribute>
              <AttributeName>Microsoft.Maui.Controls.TypeConverter(typeof(Microsoft.Maui.Controls.TypeTypeConverter))</AttributeName>
            </Attribute>
          </Attributes>
        </Parameter>
      </Parameters>
      <Docs>
        <param name="targetType">The type of the object on which the data trigger will be added.</param>
        <summary>Initializes a new <see cref="T:Microsoft.Maui.Controls.DataTrigger" /> instance.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Binding">
      <MemberSignature Language="C#" Value="public Microsoft.Maui.Controls.BindingBase Binding { get; set; }" />
      <MemberSignature Language="ILAsm" Value=".property instance class Microsoft.Maui.Controls.BindingBase Binding" />
      <MemberSignature Language="DocId" Value="P:Microsoft.Maui.Controls.DataTrigger.Binding" />
      <MemberSignature Language="F#" Value="member this.Binding : Microsoft.Maui.Controls.BindingBase with get, set" Usage="Microsoft.Maui.Controls.DataTrigger.Binding" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>0.0.0.0</AssemblyVersion>
        <AssemblyVersion>1.3.0.0</AssemblyVersion>
        <AssemblyVersion>1.4.0.0</AssemblyVersion>
        <AssemblyVersion>1.5.0.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyName>Microsoft.Maui.Controls.Core</AssemblyName>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>Microsoft.Maui.Controls.BindingBase</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>Gets or sets the binding whose value will be compared to <see cref="P:Microsoft.Maui.Controls.DataTrigger.Value" /> to determine when to invoke the setters.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Setters">
      <MemberSignature Language="C#" Value="public System.Collections.Generic.IList&lt;Microsoft.Maui.Controls.Setter&gt; Setters { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance class System.Collections.Generic.IList`1&lt;class Microsoft.Maui.Controls.Setter&gt; Setters" />
      <MemberSignature Language="DocId" Value="P:Microsoft.Maui.Controls.DataTrigger.Setters" />
      <MemberSignature Language="F#" Value="member this.Setters : System.Collections.Generic.IList&lt;Microsoft.Maui.Controls.Setter&gt;" Usage="Microsoft.Maui.Controls.DataTrigger.Setters" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>0.0.0.0</AssemblyVersion>
        <AssemblyVersion>1.3.0.0</AssemblyVersion>
        <AssemblyVersion>1.4.0.0</AssemblyVersion>
        <AssemblyVersion>1.5.0.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyName>Microsoft.Maui.Controls.Core</AssemblyName>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Collections.Generic.IList&lt;Microsoft.Maui.Controls.Setter&gt;</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>Gets the list of <see cref="T:Microsoft.Maui.Controls.Setter" /> objects that will be applied when the binding that is named by the  <see cref="P:Microsoft.Maui.Controls.DataTrigger.Binding" /> property becomes equal to <see cref="P:Microsoft.Maui.Controls.DataTrigger.Value" />.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Value">
      <MemberSignature Language="C#" Value="public object Value { get; set; }" />
      <MemberSignature Language="ILAsm" Value=".property instance object Value" />
      <MemberSignature Language="DocId" Value="P:Microsoft.Maui.Controls.DataTrigger.Value" />
      <MemberSignature Language="F#" Value="member this.Value : obj with get, set" Usage="Microsoft.Maui.Controls.DataTrigger.Value" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>0.0.0.0</AssemblyVersion>
        <AssemblyVersion>1.3.0.0</AssemblyVersion>
        <AssemblyVersion>1.4.0.0</AssemblyVersion>
        <AssemblyVersion>1.5.0.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyName>Microsoft.Maui.Controls.Core</AssemblyName>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>Gets or sets the value of the binding, named by the <see cref="P:Microsoft.Maui.Controls.DataTrigger.Binding" /> property, that will cause the setters to be applied.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Microsoft.Maui.Controls.Xaml.IValueProvider.ProvideValue">
      <MemberSignature Language="C#" Value="object IValueProvider.ProvideValue (IServiceProvider serviceProvider);" />
      <MemberSignature Language="ILAsm" Value=".method hidebysig newslot virtual instance object Microsoft.Maui.Controls.Xaml.IValueProvider.ProvideValue(class System.IServiceProvider serviceProvider) cil managed" />
      <MemberSignature Language="DocId" Value="M:Microsoft.Maui.Controls.DataTrigger.Xamarin#Forms#Xaml#IValueProvider#ProvideValue(System.IServiceProvider)" />
      <MemberSignature Language="F#" Value="abstract member Microsoft.Maui.Controls.Xaml.IValueProvider.ProvideValue : IServiceProvider -&gt; obj&#xA;override this.Microsoft.Maui.Controls.Xaml.IValueProvider.ProvideValue : IServiceProvider -&gt; obj" Usage="dataTrigger.Microsoft.Maui.Controls.Xaml.IValueProvider.ProvideValue serviceProvider" />
      <MemberType>Method</MemberType>
      <Implements>
        <InterfaceMember>M:Microsoft.Maui.Controls.Xaml.IValueProvider.ProvideValue(System.IServiceProvider)</InterfaceMember>
      </Implements>
      <AssemblyInfo>
        <AssemblyVersion>0.0.0.0</AssemblyVersion>
        <AssemblyVersion>1.3.0.0</AssemblyVersion>
        <AssemblyVersion>1.4.0.0</AssemblyVersion>
        <AssemblyVersion>1.5.0.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyName>Microsoft.Maui.Controls.Core</AssemblyName>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="serviceProvider" Type="System.IServiceProvider" />
      </Parameters>
      <Docs>
        <param name="serviceProvider">For internal use by the XAML infrastructure.</param>
        <summary>For internal use by the XAML infrastructure.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
  </Members>
</Type>
