2009-05-27 8 views
0

kann ich einfachen Trigger erstellen, die überprüfen, ob eine Eigenschaft einen bestimmten Wert wie dies hat:Wie kann ich einen XAML-Trigger verwenden, um einem Wert einen Wert zu geben, der größer oder gleich ist?

<Style x:Key="StatusIndicator" TargetType="TextBlock"> 
    <Style.Triggers> 
     <DataTrigger Binding="{Binding Status}" Value="off"> 
      <Setter Property="TextBlock.Foreground" Value="Red"/> 
     </DataTrigger> 
    </Style.Triggers> 
</Style> 

Aber wie würde ich verwenden, um alle komplizierte Operatoren, zB:

PSEUDO-CODE :

<DataTrigger Binding="{Binding Amount}" Operator=">=" Value="35"> 
    <Setter Property="TextBlock.Foreground" Value="Red"/> 
</DataTrigger> 

gibt es eine Eigenschaft wie "Operator", oder brauche ich Um einen Konverter für diese oder zu verwenden, wie werden komplexe Operatoren in Triggern realisiert?

Antwort

1

Sie können keine komplexen Operatoren in Triggern haben. Ein Konverter ist ein guter Weg zu gehen; vielleicht von int zu bool für dein Beispiel, oder int zu enum, wenn es mehr als zwei Zustände gibt.

Ich glaube nicht, dass Sie komplexe Logik in XAML einbetten möchten. Es würde nicht lange dauern, um ein Wartungsalbtraum zu werden.

Verwandte Themen