开发者

Adding a ContentPresenter to the style of a Control

开发者 https://www.devze.com 2023-01-20 05:54 出处:网络
I\'m trying to style an element in WPF which displays a yellow border around anything thats in it and shows a tool-tipwhen the cursor is over it. The problem is that I don\'t have much of an idea how

I'm trying to style an element in WPF which displays a yellow border around anything thats in it and shows a tool-tip when the cursor is over it. The problem is that I don't have much of an idea how to do this and anything I tried does not seem to work.

Here is what I have until now:

<Style x:Key="HistoryElementStyle"
       TargetTy开发者_开发问答pe="{x:Type Control}">
    <Setter Property="BorderBrush"
            Value="Yellow"/>
    <Setter Property="BorderThickness"
            Value="1.5" />
    <Setter Property="CornerRadius"
            Value="2" />
    <Setter Property="ToolTip">
        <Setter.Value>
            <ToolTip Template="{StaticResource HistoryTooltipTemplate}" />
        </Setter.Value>
    </Setter>
    <Setter Property="Template">
        <Setter.Value>
            <ContentPresenter x:Name="PART_Content"
                              Width="Auto"
                              HorizontalAlignment="Stretch"
                              ContentSource="Content"
                              IsEnabled="{TemplateBinding IsEnabled}" />
        </Setter.Value>
    </Setter>
</Style>

Visual Studio complains that the ContentPresenter is an invalid type.

Cheers

AC


You must wrap the ContentPresenter around a <ControlTemplate TargetType="Control" /> to match the type of the Control.Template property.


I'd try adding the DataTempalte tag around the ContentPresenter (sorry, I cannot test from where I am writing this).

0

精彩评论

暂无评论...
验证码 换一张
取 消