Я использую .Net 4.7.2 и WPF 4.5.1
Я создал пользовательский элемент управления, который я использую в качестве всплывающей подсказки. Пользовательский элемент управления работает, и я могу применить его к элементу управления пользовательского интерфейса, например, к TextBox.
К сожалению, я не нахожу способа избавиться от типичной рамки общей подсказки, которая напоминает мне о кнопке.
Но посмотрите
Подсказка с рамкой
Я попытался переопределить стиль всплывающих подсказок по умолчанию, как показано в нескольких примерах здесь, на stackoverflow и других сайтах.
К сожалению, это не решает мою проблему.
Мой код xaml выглядит так:
<TextBox>
<TextBox.ToolTip>
<local:MyToolTip Text="{Binding MyToolTipText}" />
</TextBox.ToolTip>
</TextBox>
Как удалить кнопку, похожую на рамку вокруг всплывающей подсказки?
Заранее спасибо
Пояснение:
Я пробовал два подхода:
первый:
<Style TargetType="{x:Type ToolTip}">
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="Control.Template">
<Setter.Value>
<ControlTemplate>
<Border VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Background="Black">
<!-- other content -->
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
второй:
<Style TargetType="{x:Type MyToolTip}">
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="Control.Template">
<Setter.Value>
<ControlTemplate>
<local:MyToolTip />
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Пользовательский элемент управления создается не из всплывающей подсказки, а из элемента управления
public class ToolTip : Control
{
// ...
}
Как я уже упоминал, с кодом элемента управления нет проблем, я борюсь с проблемой стилей.