Добавление ContentPresenter в стиль элемента управления - PullRequest
0 голосов
/ 15 октября 2010

Я пытаюсь стилизовать элемент в WPF, который отображает желтую рамку вокруг всего, что в нем, и показывает подсказку, когда курсор находится над ним. Проблема в том, что я понятия не имею, как это сделать, и все, что я пробовал, похоже, не работает.

Вот что у меня есть до сих пор:

<Style x:Key="HistoryElementStyle"
       TargetType="{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 жалуется, что ContentPresenter является недопустимым типом.

Приветствия

AC

Ответы [ 2 ]

2 голосов
/ 15 октября 2010

Вы должны обернуть ContentPresenter вокруг <ControlTemplate TargetType="Control" />, чтобы соответствовать типу свойства Control.Template.

0 голосов
/ 15 октября 2010

Я бы попробовал добавить тег DataTempalte вокруг ContentPresenter (извините, я не могу проверить, откуда я пишу это).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...