Search code examples
wpfxamltooltipcontroltemplatecontentpresenter

WPF Tooltip ControlTemplate not showing Content


I have set up the following control template and style as the default style for all Tooltips in my application:

<Style TargetType="{x:Type ToolTip}">
    <!-- Background="Transparent" BorderBrush="Transparent" BorderThickness="0" HasDropShadow="True" -->
    <Setter Property="Background" Value="Transparent" />
    <Setter Property="BorderBrush" Value="Transparent" />
    <Setter Property="OverridesDefaultStyle" Value="true" />
    <Setter Property="Placement" Value="Bottom"></Setter>
    <Setter Property="BorderThickness" Value="0" />
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate>
                <Grid Background="{Binding Source={x:Static visualResources:ThemeManager.Instance}, Path=ThemePageColor}" >
                    <ContentPresenter Margin="3"></ContentPresenter>
                </Grid>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

(The code above is in the Window.Resources)

And inside the same window I have this control:

<Button ToolTip="Tooltip Text!" HorizontalContentAlignment="Right" Height="60" Click="_Button_AddCourse_Click"/>

But when I run my program the tooltips don't appear as they should! I Only can see an orange rectangle (which is the Grid in controltemplate , and orange is the ThemeManager.Instance.ThemePageColor property) , But there is no text inside the tooltip.

Thanks in advance.


Solution

  • Sorry was trying to do this from my phone in a hurry and threw it in the comment by mistake.

    Anyway, just change <ControlTemplate> to <ControlTemplate TargetType="ToolTip"> so it knows what your ContentPresenter is even trying to talk to and you should be good.

    Hope this helps, cheers!

    P.S. - Mark answered questions as such so people know you got your issue resolved.