2012-08-08 66 views
1

具有低于数据绑定类到Silverlight控件工具提示

Public Class Author 
{ 
    Public String Name{get;set;} 
    Public String Description{get;set;} 
    Public int NumberOfBooks{get;set;} 
} 

一个Author类和数据绑定List<Author>通过DataTemplate中以列表框像下面

<ListBox ItemsSource="{Binding Authors}" BorderThickness="0"> 
          <ListBox.ItemTemplate> 
           <DataTemplate> 
            <StackPanel ToolTipService.ToolTip="{Binding Description}" ToolTipService.Placement="Right"> 
             <TextBlock Text="{Binding Name}"></TextBlock> 
            </StackPanel> 
           </DataTemplate> 
          </ListBox.ItemTemplate> 
         </ListBox> 

如何生成使用XAML中提示描述声明绑定像下面一样

AuthorName (NumberOfBooks) 
Description 

回答

1

你可以简单。

<TextBlock Text="{Binding Name}"> 
    <ToolTipService.ToolTip> 
    <ToolTip> 
     <StackPanel> 
     <TextBlock> 
      <Run Text="{Binding AuthorName}"/> 
      <Run Text=" "/> 
      <Run Text="{Binding NumberOfBooks}"/> 
     </TextBlock> 
     <TextBlock MaxWidth="150" 
       Text="{Binding Description}" TextWrapping="Wrap"/> 
     </StackPanel> 
    </ToolTip> 
    </ToolTipService.ToolTip> 
</TextBlock> 

还是看中了。

<TextBlock Text="{Binding Name}"> 
    <ToolTipService.ToolTip> 
     <ToolTip> 
     <StackPanel> 
      <Border Background="CadetBlue" Margin="5" Padding="5"> 
       <TextBlock Text="{Binding AuthorName}" HorizontalAlignment="Center"/> 
      </Border> 
      <TextBlock Text="{Binding NumberOfBooks, StringFormat='No. of Books: \{0\}'}"/> 
      <TextBlock MaxWidth="150" 
       Text="{Binding Description}" TextWrapping="Wrap"/> 
     </StackPanel> 
     </ToolTip> 
    </ToolTipService.ToolTip> 
</TextBlock> 

希望这有助于:)