根据 ComboBox 设置 Tooltip
Set Tooltip depending on ComboBox
我想根据所选的 ComboBox 值设置文本框的工具提示
这是我的组合框:
<ComboBox x:Name="LandComboBox" >
<ComboBoxItem Content="Test 1.2." IsSelected="True"/>
<ComboBoxItem Content="Test 55" />
</ComboBox>
这是我的文本框:
<TextBox x:Name="LandTextBox" >
<TextBox.Style>
<Style TargetType="{x:Type TextBox}">
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=LandComboBox, Path=SelectedItem}" Value="Test 1.2.">
<Setter Property="ToolTip" Value="Hello 1.2." />
</DataTrigger>
<DataTrigger Binding="{Binding ElementName=LandComboBox, Path=SelectedItem}" Value="Test 55">
<Setter Property="ToolTip" Value="Hello 55" />
</DataTrigger>
</Style.Triggers>
</Style>
</TextBox.Style>
</TextBox>
但是没有出现工具提示。怎么了?
将绑定更改为 SelectedItem.Content
而不是 SelectedItem
。
组合框中的元素不是普通的 String
"Items"。
它们的类型是 ComboBoxItem
<DataTrigger Binding="{Binding ElementName=LandComboBox, Path=SelectedItem.Content}" Value="Test 1.2.">
<Setter Property="ToolTip" Value="Hello 1.2." />
</DataTrigger>
<DataTrigger Binding="{Binding ElementName=LandComboBox, Path=SelectedItem.Content}" Value="Test 55">
<Setter Property="ToolTip" Value="Hello 55" />
</DataTrigger>
尝试使用:Path=SelectedItem.Content
<TextBox x:Name="LandTextBox" >
<TextBox.Style>
<Style TargetType="{x:Type TextBox}">
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=LandComboBox, Path=SelectedItem.Content}" Value="Test 1.2.">
<Setter Property="ToolTip" Value="Hello 1.2." />
</DataTrigger>
<DataTrigger Binding="{Binding ElementName=LandComboBox, Path=SelectedItem.Content}" Value="Test 55">
<Setter Property="ToolTip" Value="Hello 55" />
</DataTrigger>
</Style.Triggers>
</Style>
</TextBox.Style>
</TextBox>
只需使用 SelectionBoxItem
而不是 SelectedItem
而且你不能使用 Value="{Binding ElementName=LandComboBox, Path=SelectionBoxItem}"
也用于动态显示工具提示
我想根据所选的 ComboBox 值设置文本框的工具提示
这是我的组合框:
<ComboBox x:Name="LandComboBox" >
<ComboBoxItem Content="Test 1.2." IsSelected="True"/>
<ComboBoxItem Content="Test 55" />
</ComboBox>
这是我的文本框:
<TextBox x:Name="LandTextBox" >
<TextBox.Style>
<Style TargetType="{x:Type TextBox}">
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=LandComboBox, Path=SelectedItem}" Value="Test 1.2.">
<Setter Property="ToolTip" Value="Hello 1.2." />
</DataTrigger>
<DataTrigger Binding="{Binding ElementName=LandComboBox, Path=SelectedItem}" Value="Test 55">
<Setter Property="ToolTip" Value="Hello 55" />
</DataTrigger>
</Style.Triggers>
</Style>
</TextBox.Style>
</TextBox>
但是没有出现工具提示。怎么了?
将绑定更改为 SelectedItem.Content
而不是 SelectedItem
。
组合框中的元素不是普通的 String
"Items"。
它们的类型是 ComboBoxItem
<DataTrigger Binding="{Binding ElementName=LandComboBox, Path=SelectedItem.Content}" Value="Test 1.2.">
<Setter Property="ToolTip" Value="Hello 1.2." />
</DataTrigger>
<DataTrigger Binding="{Binding ElementName=LandComboBox, Path=SelectedItem.Content}" Value="Test 55">
<Setter Property="ToolTip" Value="Hello 55" />
</DataTrigger>
尝试使用:Path=SelectedItem.Content
<TextBox x:Name="LandTextBox" >
<TextBox.Style>
<Style TargetType="{x:Type TextBox}">
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=LandComboBox, Path=SelectedItem.Content}" Value="Test 1.2.">
<Setter Property="ToolTip" Value="Hello 1.2." />
</DataTrigger>
<DataTrigger Binding="{Binding ElementName=LandComboBox, Path=SelectedItem.Content}" Value="Test 55">
<Setter Property="ToolTip" Value="Hello 55" />
</DataTrigger>
</Style.Triggers>
</Style>
</TextBox.Style>
</TextBox>
只需使用 SelectionBoxItem
而不是 SelectedItem
而且你不能使用 Value="{Binding ElementName=LandComboBox, Path=SelectionBoxItem}"
也用于动态显示工具提示