2011-04-15 1 views
1

J'essaie de faire ce qui suit. J'ai un label lié à un objet qui a deux propriétés. Un que je veux afficher et un que je veux utiliser pour le datatrigger.Lier le style datatrigger à une propriété de l'objet de liaison de contenu

Voici ce que je suis venu est avec encore:

<Label Grid.Row="5" Content="{Binding ElementName=InformationUserControl, Path=Info.ObjectBound}"> 
     <Label.Style> 
      <Style TargetType="{x:Type Label}"> 
       <Style.Triggers> 
        <DataTrigger Binding="{Binding RelativeSource={RelativeSource self}, Path=Content.InterpretationValue}"> 
         <DataTrigger.Value> 
          <enums:DataInterpretation>Neutral</enums:DataInterpretation> 
         </DataTrigger.Value> 
         <Setter Property="Background" Value="Red" /> 
        </DataTrigger> 
       </Style.Triggers> 
       <Setter Property="Template"> 
        <Setter.Value> 
         <ControlTemplate TargetType="{x:Type Label}"> 
          <TextBlock Text="{TemplateBinding Content.Value}" /> 
         </ControlTemplate> 
        </Setter.Value> 
       </Setter> 
      </Style> 
     </Label.Style> 
    </Label> 

Le problème est que mon modèle remplace la valeur par défaut il un rien afficher. Y a-t-il un moyen de le faire fonctionner?

Merci!

Répondre

0

Je pense que le problème est pas que vous remplacez le modèle, mais que la liaison est cassé, je voudrais essayer ceci:

<TextBlock Text="{Binding RelativeSource={RelativeSource Mode=TemplatedParent}, Path=Content.Value}" /> 
Questions connexes