私は次のコードを持っています:
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Window.Resources>
<Style x:Key="{x:Type ToolTip}" TargetType="{x:Type ToolTip}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ToolTip}">
<Border Background="Black">
<TextBlock FontFamily="Tahoma" FontSize="11" Text="{TemplateBinding Content}" Foreground="WhiteSmoke" Padding="2" />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Window.Resources>
<StackPanel>
<Label Content="Label 1" ToolTip="asd" />
<Label Content="Label 2" ToolTip="" />
<TextBlock Text="TextBlock 1" ToolTip="asd" />
<TextBlock Text="TextBlock 2" ToolTip="" />
<Button Content="Button 1" ToolTip="asd" />
<Button Content="Button 2" ToolTip="" />
</StackPanel>
これで、テストでわかるように、ラベル2、テキストブロック2、ボタン2にカーソルを合わせると、ツールチップが表示されたままになります。ツールチップが空またはnullの場合、何も表示されないようにトリガーする必要があります。XAMLから簡単に削除できることはわかっていますが、ここで行っている方法は異なります。
トリガーを追加して値=""をチェックし、トリガーの内部をnullにして、テンプレートをnullに設定しようとしましたが、いずれも機能していません
専門家の何人かがそれに光を当てることができれば、私はとてもうれしいです