2011-01-05 27 views
11

Bağlama yoluyla doldurulmuş bir özelliğim var. Renk niteliğiWPF: bağlama, koşullu özellik ayarlayıcısı

<Rectangle.Fill> 
     <SolidColorBrush Color="{Binding Path=Color}"/> 
</Rectangle.Fill> 

nasıl koşullu için böyle bağlayıcı olduğunu refactor Renk özelliğinin değerini ayarlanır:

:
<Rectangle.Fill> 
      <SolidColorBrush Color="{Binding Path=SomeBooleanProperty ? #FF0000 : #00FF00 }"/> 
    </Rectangle.Fill> 
+1

Şartı mülk sahibine koyabilir ve normal olarak mülke bağlanabilir misiniz? – vlad

+0

Evet, yapabilirim, ancak XAML’de stil oluşturmak istiyorum. –

cevap

20

, @Jackson teşekkürler son kod şudur
<Style TargetType="Rectangle" x:Key="ColorBySuccess"> 
      <Style.Triggers> 
       <DataTrigger Binding="{Binding Path=Success}" Value="True"> 
        <Setter Property="Fill" Value="#00FF00"/> 
       </DataTrigger> 
      </Style.Triggers> 
     </Style> 
... 
<Rectangle Fill="Green" Style="{StaticResource ColorBySuccess}" .../>