Usuário com melhor resposta
ToolTip nos itens da listbox

Pergunta
-
Bom dia.
Gostaria de saber como é possível colocar tooltip em cada item da uma listbox dinamicamente. O problema que estou enfrentando é como fazer o binding da tooltip.
O que eu fiz até agora é o seguinte:
<ListBox.ItemContainerStyle>
<Style TargetType="{x:Type ListBoxItem}">
<Setter Property="ToolTip" Value="Teste"/>
</Style>
</ListBox.ItemContainerStyle>Mas como eu faço o binding da propriedade Value da tooltip?
Respostas
-
Essa sua propriedade é uma DependencyProperty, certo?
Você pode fazer assim
e não esquece de setar a propriedade name da Window<ListBox x:Name="lst" SelectedValuePath="Id" DisplayMemberPath="Name" ItemsSource="{Binding ElementName=MyWindow, Path=List, Mode=TwoWay}"> <ListBox.ItemContainerStyle> <Style TargetType="{x:Type ListBoxItem}"> <Setter Property="ToolTip" Value="{Binding Path=Name}"/> </Style> </ListBox.ItemContainerStyle> </ListBox>
Att.<Window x:Class="WpfApplication4.Window1" Name="MyWindow"...
Anderson- Marcado como Resposta Adriel CodecoModerator sexta-feira, 4 de março de 2011 04:11
Todas as Respostas
-
Olá Marcelo,
Você pode fazer da seguinte maneira
Onde "Name" é a propriedade do objeto que você está usando para setar o ItemsSource.<ListBox x:Name="lst" SelectedValuePath="Id" DisplayMemberPath="Name"> <ListBox.ItemContainerStyle> <Style TargetType="{x:Type ListBoxItem}"> <Setter Property="ToolTip" Value="{Binding Path=Name}"/> </Style> </ListBox.ItemContainerStyle> </ListBox>
Att.
Anderson -
O ItemsSource do listbox é definido assim: ItemsSource="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=NaoSelecionados, Mode=TwoWay}"
Onde que NaoSelecionados typeof(ObservableCollection<object>) é uma propriedade do meu componente onde está o listbox. Como deveria ser o binding nessa situação?
-
Essa sua propriedade é uma DependencyProperty, certo?
Você pode fazer assim
e não esquece de setar a propriedade name da Window<ListBox x:Name="lst" SelectedValuePath="Id" DisplayMemberPath="Name" ItemsSource="{Binding ElementName=MyWindow, Path=List, Mode=TwoWay}"> <ListBox.ItemContainerStyle> <Style TargetType="{x:Type ListBoxItem}"> <Setter Property="ToolTip" Value="{Binding Path=Name}"/> </Style> </ListBox.ItemContainerStyle> </ListBox>
Att.<Window x:Class="WpfApplication4.Window1" Name="MyWindow"...
Anderson- Marcado como Resposta Adriel CodecoModerator sexta-feira, 4 de março de 2011 04:11
-