DataTrigger.Setters Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene una colección de objetos Setter, que describen los valores de propiedad que se van a aplicar si el elemento de datos cumple la condición especificada.
public:
property System::Windows::SetterBaseCollection ^ Setters { System::Windows::SetterBaseCollection ^ get(); };
public System.Windows.SetterBaseCollection Setters { get; }
member this.Setters : System.Windows.SetterBaseCollection
Public ReadOnly Property Setters As SetterBaseCollection
Valor de propiedad
El valor predeterminado es null
.
Ejemplos
En el ejemplo siguiente se muestran dos DataTrigger objetos definidos en .DataTemplate DataTemplate se aplica a objetos de datos AuctionItem (no se muestran en este ejemplo), que tienen la propiedad SpecialFeatures.
El primero DataTrigger se especifica de forma que si el objeto de datos tiene un valor SpecialFeatures de Color, el elemento se muestra con un DodgerBlue
fondo con títulos de la Marina. Si el objeto de datos tiene un valor SpecialFeatures de Highlight, el segundo DataTrigger estará activo, lo que hará que el elemento se muestre con un borde Naranja con una estrella.
Para obtener el ejemplo completo, consulte Demostración de enlace de datos.
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding Path=SpecialFeatures}">
<DataTrigger.Value>
<src:SpecialFeatures>Color</src:SpecialFeatures>
</DataTrigger.Value>
<DataTrigger.Setters>
<Setter Property="BorderBrush" Value="DodgerBlue" TargetName="border" />
<Setter Property="Foreground" Value="Navy" TargetName="descriptionTitle" />
<Setter Property="Foreground" Value="Navy" TargetName="currentPriceTitle" />
<Setter Property="BorderThickness" Value="3" TargetName="border" />
<Setter Property="Padding" Value="5" TargetName="border" />
</DataTrigger.Setters>
</DataTrigger>
<DataTrigger Binding="{Binding Path=SpecialFeatures}">
<DataTrigger.Value>
<src:SpecialFeatures>Highlight</src:SpecialFeatures>
</DataTrigger.Value>
<Setter Property="BorderBrush" Value="Orange" TargetName="border" />
<Setter Property="Foreground" Value="Navy" TargetName="descriptionTitle" />
<Setter Property="Foreground" Value="Navy" TargetName="currentPriceTitle" />
<Setter Property="Visibility" Value="Visible" TargetName="star" />
<Setter Property="BorderThickness" Value="3" TargetName="border" />
<Setter Property="Padding" Value="5" TargetName="border" />
</DataTrigger>
</DataTemplate.Triggers>
Comentarios
Uso de elementos de propiedad XAML
<object>
<object.Setters>
ZeroOrMoreSetters
</object.Setters>
</object>
Valores XAML
ZeroOrMoreSetters
Cero o más Setter objetos.
Permite DataTrigger iniciar acciones o usar Setters para aplicar valores de propiedad cuando el elemento de datos cumple una condición especificada.
Si hay más de un establecedor que establece la misma propiedad en la misma colección de establecedores, se usa el establecedor declarado por última vez.
La Setters propiedad de un DataTrigger objeto solo puede constar de Setter objetos. Agregar un Setter elemento secundario a un DataTrigger objeto lo agrega implícitamente al SetterBaseCollection objeto para el DataTrigger objeto . EventSetter no se admiten objetos; solo Style.Setters admite EventSetter objetos.