tooltip其实和popup很像,但是popup弹出后需要监听鼠标点击事件,所以触感不流畅,弹出后不会自己消失
而tooltip在鼠标滑过时会显示,移开后会隐藏
tooltip因为可以接受类对象,所以可以传任意内容给样式模板
代码:
<!-- =============== 提示文本样式 =============== -->
<Style x:Key="FlowToolTip" TargetType="ToolTip">
<Setter Property="HorizontalAlignment" Value="Left"/>
<Setter Property="VerticalAlignment" Value="Top"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<Grid>
<Border Background="White" CornerRadius="2">
<Border.Effect>
<DropShadowEffect Direction="0" BlurRadius="7" ShadowDepth="0" Color="Black" Opacity="0.09" />
</Border.Effect>
</Border>
<TextBlock
Margin="23,6"
FontFamily="{StaticResource DefaultFontFamily}"
FontSize="13"
Foreground="{StaticResource MinorText}"
Text="{TemplateBinding ContentControl.Content}"/>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
使用方法:
<!-- 提示框样式 -->
<Grid.ToolTip>
<ToolTip x:Name="tooltip"
Style="{StaticResource FlowToolTip}"
Content="{Binding Tooltip}"
PlacementTarget="{Binding ElementName=itemGrid}"
Placement="Bottom" VerticalOffset="4"
/>
</Grid.ToolTip>

本文探讨了WPF中Tooltip与Popup的区别,强调Tooltip在用户体验上的优势,如自动显示和隐藏。同时,介绍了Tooltip能接受类对象作为内容以自定义样式模板的特点,并给出了相关代码示例,展示了如何在WPF应用中实现自定义Tooltip。

402

被折叠的 条评论
为什么被折叠?



