Search code examples
c#wpfdatatrigger

Set Tooltip depending on ComboBox


I want to set the tooltip of my textbox depending on the selected ComboBox value

This is my ComboBox:

<ComboBox x:Name="LandComboBox" >
    <ComboBoxItem Content="Test 1.2." IsSelected="True"/>
    <ComboBoxItem Content="Test 55" />
</ComboBox>

And this is my TextBox:

<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>

But no tooltip appears. What's wrong?


Solution

  • Change the binding to SelectedItem.Content instead of SelectedItem.

    The elements in the combobox arent plain String "Items". They are of the type 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>