2010-07-30 28 views
23

Aşağıdaki kenarlık var. (IsDeleted özellik her zaman false olması gibi) doğru şekilde TextBlock işin Ön plan ancak sınırın Geçmişi hepStyle.DataTrigger Sınır arka plan üzerinde

<Border DockPanel.Dock="Top" BorderBrush="Black" Background="#CBE2FF" BorderThickness="2" CornerRadius="5" Padding="0" Margin="5"> 
    <Border.Style> 
     <Style TargetType="{x:Type Border}"> 
      <Style.Triggers> 
       <DataTrigger Binding="{Binding IsDeleted}" Value="True"> 
        <Setter Property="Background" Value="#A00000"/> 
       </DataTrigger> 
      </Style.Triggers> 
     </Style> 
    </Border.Style> 
    <TextBlock Margin="5" FontWeight="Bold" FontSize="14" Text="Queue Details"> 
     <TextBlock.Style> 
      <Style TargetType="{x:Type TextBlock}"> 
       <Style.Triggers> 
        <DataTrigger Binding="{Binding IsDeleted}" Value="True"> 
         <Setter Property="Foreground" Value="White"/> 
        </DataTrigger> 
       </Style.Triggers> 
      </Style> 
     </TextBlock.Style> 
    </TextBlock> 
</Border> 

cevap

37

aynı kalmak istiyorum Neden explicitely sınırında arka plan değeri de belirledik. Bu, tetikleyiciden daha önceliklidir. Background="#CBE2FF"'u kaldırın ve stilin içine alın. Bu, yardımcı olacaktır.

+0

Mükemmel. Bu özelliği aştığımı bilmiyordum. Teşekkürler – Miles