我有一个 ListBox 显示人才对象的 ObservableCollection。当用户将鼠标悬停在 ListBox 中的每个项目上时,我想在 ToolTip 中显示有关人才的几条信息。
我的列表框:
<ListBox ItemsSource="{Binding ElementName=CE_Races_racesLB, Path=SelectedItem.Talents}" ItemTemplate="{StaticResource removableTalentListTemplate}" />
项目模板:
<DataTemplate x:Key="removableTalentListTemplate">
<StackPanel>
<TextBlock FontSize="13" Text="{Binding Path=tName}" VerticalAlignment="Center" Width="175" Height="18" Grid.Column="0" />
</StackPanel>
</DataTemplate>
如果我将 ToolTipService.ToolTip="{Binding Path=Description" 添加到 TextBlock 属性,我可以显示人才的描述。但是,当我尝试像这样创建自定义工具提示时:
<DataTemplate x:Key="removableTalentListTemplate">
<StackPanel>
<TextBlock FontSize="13" Text="{Binding Path=tName}" VerticalAlignment="Center" Width="175" Height="18" Grid.Column="0" />
<TextBlock.ToolTip>
<ToolTip>
<StackPanel>
<TextBlock Text="{Binding Path=Description}" />
</StackPanel>
</ToolTip>
</TextBlock.ToolTip>
</TextBlock>
</StackPanel>
</DataTemplate>
当我将鼠标悬停在 ListBox 项上时,工具提示只会显示“System.Windows.Controls.StackPanel”。我真的很想创建一个显示大量信息的漂亮工具提示,但我无法克服这个障碍。这是它现在的截图: http: //silkforge.com/dev/ss.jpg。您看不到鼠标,但您可以在 ListBox 项“Acute Hearing I”下看到工具提示。