2017-12-12 39 views
1

Ich bin in einer Situation, wo ich Knopf habe und den Stil auf statische Ressource (CreateNewItemButtonStyle hier) dieser Taste. Ich habe auch einen Tooltip und ich zeige etwas Text, wenn ich den Mauszeiger über diesen Tooltip halte ("SelectAllLines" hier). Es dsiplays Tooltip Text korrekt, wenn ich mit der Maus über den Bereich der Schaltfläche, mit Ausnahme des Inhaltsbereichs (ich meine, wenn ich auf Inhalt "AL" schweben zeigt es "AL" auf Tooltip, sollte es nicht zeigen, es sollte nur zeigen " SelectAllLines "im Tooltip für den gesamten Schaltflächenbereich".Tooltip zeigt anderen Text beim Schweben über Button Inhalt

Ich fand heraus, dass es wegen des Stils ist, den ich verwende.

Aber wie gleichen Text auf meinem Tooltip auf meinem gesamten Tastenbereich haben, die ich, indem Sie Quick-Info = "Ausgewählte Lines"

<Button 
    x:Name="AllLinesButtonX" 
    Background="{StaticResource FlowPowderBlackBrush}" 
    Click="AllLinesButtonX_OnClick" 
    Command="{Binding AllLinesCommand}" 
    Content="AL" 
    MouseRightButtonUp="SelectGeometryToggleButton_OnMouseRightButtonUp" 
    Style="{StaticResource CreateNewItemButtonStyle}" //If i remove this line it stops showing "AL", just shows "SelectedAllLines" which is the correct behavior 
    ToolTip="SelectAllLines" 
</Button> 

Hier gesetzt habe, ist Stil Schlüssel:

<Style x:Key="CreateNewItemButtonStyle" TargetType="Button"> 
<Setter Property="OverridesDefaultStyle" Value="True" /> 
<Setter Property="FocusVisualStyle" Value="{StaticResource FocusVisualStyle}" /> 
<Setter Property="BorderThickness" Value="1" /> 
<Setter Property="TextBlock.FontSize" Value="10" /> 
<Setter Property="HorizontalAlignment" Value="Center" /> 
<Setter Property="VerticalAlignment" Value="Center" /> 
<Setter Property="Cursor" Value="Hand" /> 
<Setter Property="Template"> 
    <Setter.Value> 
     <ControlTemplate TargetType="Button"> 
      <Border 
       Background="{TemplateBinding Background}" 
       BorderBrush="{TemplateBinding BorderBrush}" 
       BorderThickness="{TemplateBinding BorderThickness}" 
       SnapsToDevicePixels="True"> 
       <ContentPresenter 
        HorizontalAlignment="Center" 
        VerticalAlignment="Center" 
        Content="{TemplateBinding Content}" 
        TextBlock.TextAlignment="Center" /> 
      </Border> 
     </ControlTemplate> 
    </Setter.Value> 
</Setter> 
<Style.Triggers> 
    <Trigger Property="IsMouseOver" Value="True"> 
     <Setter Property="Background" Value="{StaticResource ActiveButtonBrush}" /> 
     <Setter Property="BorderBrush" Value="{StaticResource ActiveBorderBrush}" /> 
    </Trigger> 
    <Trigger Property="IsPressed" Value="True"> 
     <Setter Property="Background" Value="{StaticResource ActiveButtonBrush}" /> 
     <Setter Property="BorderBrush" Value="{StaticResource ActiveBorderBrush}" /> 
    </Trigger> 
    <Trigger Property="IsEnabled" Value="False"> 
     <Setter Property="Cursor" Value="Arrow" /> 
    </Trigger> 
</Style.Triggers> 

+0

ich den obigen Code versucht haben und scheinen Dont damit kein Problem zu haben .. es funktioniert gut .. –

Antwort

Verwandte Themen