2012-06-18 83 views

回答

8
<Window.Resources> 
    <Style TargetType="{x:Type ToolTip}"> 
     <Setter Property="ContentTemplate"> 
      <Setter.Value> 
       <DataTemplate> 
        <TextBlock TextWrapping="Wrap" Text="{Binding}" /> 
       </DataTemplate> 
      </Setter.Value> 
     </Setter> 
    </Style> 
</Window.Resources> 
<Grid> 
    <Rectangle Width="100" Height="100" Fill="Red"> 
     <Rectangle.ToolTip> 
      <ToolTip Width="100"> 
       This is some text with text wrapping. 
      </ToolTip> 
     </Rectangle.ToolTip> 
    </Rectangle> 
</Grid> 

本例假設您希望能夠根據使用情況設置寬度。如果您想將其設置爲樣式的一部分,請將其添加到TextBlock元素中。

+0

非常感謝你。 – AMissico

+0

導致工具提示顯示DevExpress PivotGrid的「System.Windows.Controls.ContentControl:。 – AMissico

+0

+1對我來說工作正常。 –

2

如果你只是想得到下面的效果,請閱讀this post

enter image description hereenter image description hereenter image description here

3

這種風格防止提示從空字符串彈出。

<Style TargetType="ToolTip"> 
    <Setter Property="Template"> 
     <Setter.Value> 
      <ControlTemplate TargetType="ToolTip"> 
       <TextBlock Text="{TemplateBinding Content}" 
          MaxWidth="400" 
          TextWrapping="Wrap"/> 
      </ControlTemplate> 
     </Setter.Value> 
    </Setter> 
    <Style.Triggers> 
     <Trigger Property="Content" Value=""> 
      <Setter Property="Visibility" Value="Collapsed" /> 
     </Trigger> 
    </Style.Triggers> 
</Style> 

或者使用的ContentTemplate:

<Style TargetType="{x:Type ToolTip}"> 
    <Setter Property="ContentTemplate"> 
     <Setter.Value> 
      <DataTemplate> 
       <StackPanel> 
        <TextBlock Text="{Binding}" 
           MaxWidth="400" 
           TextWrapping='Wrap' /> 
       </StackPanel> 
      </DataTemplate> 
     </Setter.Value> 
    </Setter> 
    <Style.Triggers> 
     <Trigger Property="Content" Value=""> 
      <Setter Property="Visibility" Value="Collapsed" /> 
     </Trigger> 
    </Style.Triggers> 
</Style>