пятница, 8 мая 2015 г.

Tooltip в виде выноски (Balloon)


Как оказалось делал зря, но прикольно, поэтому выложу, вдруг где еще пригодиться. Задача состоит в том, чтобы вывести ToolTip в виде выноски (балона-облачка).



Ларчик открывается достаточно просто. Заменяем ToolTip через стили на StackPanel, с Path для изображения треугольничка и Border для основного содержимого. Вот так:
<Style TargetType="ToolTip">
    <Setter Property="OverridesDefaultStyle" Value="true"/>
    <Setter Property="HasDropShadow" Value="True"/>
    <Setter Property="Placement" Value="Bottom" />
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="ToolTip">
                <StackPanel>
                    <Path Margin="10,0,0,0" Fill="#e5323232" Data="M 0 6 L 6 0 L 12 6 Z"/>
                    <Border CornerRadius="3" HorizontalAlignment="Center" VerticalAlignment="Top" Padding="10,7" BorderThickness="0" Background="#e5323232">
                        <StackPanel>
                            <TextBlock FontFamily="Arial" FontSize="12" Text="{TemplateBinding Content}" Foreground="#f0f0f0" />
                        </StackPanel>
                    </Border>
                </StackPanel>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>
Все, прикольный ToolTip получен.

2 комментария: