Это мой первый пост в stackoverflow и я новичок в xaml и wpf.Проблемы с моей подсказкой на пользовательском элементе управления (xaml wpf)
У меня есть настраиваемый элемент управления, над которым я работаю, и я хочу добавить всплывающую подсказку, которую можно настроить, когда объявлен элемент управления. Мне удалось получить подсказку, которая работает так, как я хочу, чтобы она использовала шаблон стиля, как показано ниже, однако у меня возникают проблемы с всплывающей подсказкой, даже когда у меня нет текстовой настройки для нее.
Я попытался вырезать любой из кода в фрагменте ниже, чтобы оставить только код, связанный с подсказкой.
<Style TargetType="{x:Type local:MetroButton}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type local:MetroButton}">
<Grid x:Name="LayoutRoot" Margin="0" Width="{TemplateBinding BtnWidth}" Height="{TemplateBinding BtnHeight}" Background="{TemplateBinding Background}">
<Grid.ToolTip>
<Border
BorderBrush="{TemplateBinding TooltipBorderColour}"
Background="{TemplateBinding TooltipBackground}"
BorderThickness="{TemplateBinding TooltipBorderThickness}"
CornerRadius="{TemplateBinding TooltipCornerRadius}"
>
<StackPanel>
<TextBlock
Text="{TemplateBinding TooltipText}"
Foreground="{TemplateBinding TooltipFontColour}"
FontStyle="{TemplateBinding TooltipFontStyle}"
FontFamily="{TemplateBinding TooltipFontFamily}"
FontSize="{TemplateBinding TooltipFontSize}"
FontWeight="{TemplateBinding TooltipFontWeight}"
Margin="{TemplateBinding TooltipTextMargin}"
>
</TextBlock>
</StackPanel>
</Border>
</Grid.ToolTip>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="TooltipText" Value="">
<Setter Property="ToolTipService.IsEnabled" Value="False"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Спасибо за ваш быстрый ответ. Я изменил мне xaml, как вы предложили. Моя подсказка по-прежнему отображается, даже когда я не задал ей никакого текста. Я изменил свой фрагмент кода, чтобы отразить изменения, которые я сделал. –
@SimonHarrison Я обновил свой ответ. – Xtr
Благодарим за помощь :-) –