2009-04-17 20 views
1

Gibt es eine Möglichkeit, einen Style nur auf einige Tooltips anzuwenden? Ich versuche, die Tooltip-Vorlage nur für QuickInfos anzugeben, die Validierungsfehler anzeigen. Angenommen, ich ein Tooltip Stil haben, sagen errorTTStyle, und einige Validierungsvorlage:Styling ToolTipService.Tooltip

<Style TargetType="{x:Type TextBox}"> 
<Style.Triggers> 
    <Trigger Property="Validation.HasError" Value="true"> 
    <Setter Property="ToolTip" Value="{Binding RelativeSource={RelativeSource Self}, Path=(Validation.Errors).CurrentItem.ErrorContent}" /> 
    </Trigger> 
</Style.Triggers> 
</Style> 

Wie WPF zwingen errorTTStyle für diese Situation nur zu verwenden (Ich weiß, ich globaly tootlip Stil ändern können, aber das ist nicht, was ich will)

Antwort

1

Sie könnten den Stil für die toolTip in den Ressourcen des Textbox Stil hinzufügen und es würde nur von der Mutter Stil verwendet werden, stützen auch diesen Stil in der errorTTStyle wenn Sie einen externen Stil verwenden möchten:

<Style TargetType="{x:Type TextBox}"> 

    <Style.Resources> 
     <Style TargetType="{x:Type ToolTip}" BasedOn="{StaticResource errorTTStyle}" /> 
    </Style.Resources>  

<Style.Triggers> 
    <Trigger Property="Validation.HasError" Value="true"> 
     <Setter Property="ToolTip" Value="{Binding RelativeSource={RelativeSource Self}, Path=(Validation.Errors).CurrentItem.ErrorContent}" /> 
    </Trigger> 
    </Style.Triggers> 
</Style>