none
ToolTip数据绑定不上,Why? RRS feed

  • 问题

  • 1、这样数据绑定可以绑定上:

      
    <ToolTipService.ToolTip>
         <ToolTip Content="{Binding Caption}" />
    </ToolTipService.ToolTip>

    2、但是这样数据就绑定不上了。

                                                 

         <ToolTipService.ToolTip>
                                    <ToolTip>
                                        <ToolTip.ContentTemplate>
                                            <DataTemplate>
                                                <StackPanel >
                                                    <TextBlock Text="标题"></TextBlock>
                                                    <TextBlock Text="名称"></TextBlock>
      <TextBlock Text="{Binding Caption}"></TextBlock>
                                                </StackPanel>
                                            </DataTemplate>
                                        </ToolTip.ContentTemplate>

                                    </ToolTip>
               </ToolTipService.ToolTip>

    问题:为什么使用了“</ToolTip.ContentTemplate>”,数据就绑定不上了呢???     Why???


    Science and technology is my lover.

    2012年8月29日 4:17

答案

  • 你好,

    请参考我的代码:

        <UserControl.Resources>
            <local:Customers x:Key="customers"></local:Customers>
            <ControlTemplate x:Key="ToolTipTemplate">
                <StackPanel Orientation="Horizontal">
                    <TextBlock Text="Last Name: "></TextBlock>
                    <ContentPresenter/>
                </StackPanel>
            </ControlTemplate>
        </UserControl.Resources>
    
                <sdk:DataGrid AutoGenerateColumns="False" Height="300" Name="dataGrid1" Width="420" ItemsSource="{StaticResource customers}">
                    <sdk:DataGrid.Columns>
                        <sdk:DataGridTextColumn Header="ID" Binding="{Binding ID}"></sdk:DataGridTextColumn>
                        <sdk:DataGridTemplateColumn Header="Name">
                            <sdk:DataGridTemplateColumn.CellTemplate>
                                <DataTemplate>
                                    <TextBlock Text="{Binding FirstName}">
                                        <!--<ToolTipService.ToolTip>
                                            <ToolTip Content="{Binding LastName}"></ToolTip>
                                        </ToolTipService.ToolTip>-->
                                        <ToolTipService.ToolTip>
                                            <ToolTip Template="{StaticResource ToolTipTemplate}">
                                                <ToolTip.Content>
                                                    <TextBlock 
                                                       Text="{Binding LastName}" 
                                                       FontFamily="Georgia" FontSize="14"/>
                                                </ToolTip.Content>
                                            </ToolTip>
                                        </ToolTipService.ToolTip>
                                    </TextBlock>
                                </DataTemplate>
                            </sdk:DataGridTemplateColumn.CellTemplate>
                        </sdk:DataGridTemplateColumn>
                        <sdk:DataGridTextColumn Header="Address" Binding="{Binding Address}"></sdk:DataGridTextColumn>
                    </sdk:DataGrid.Columns>
                </sdk:DataGrid>
    
    你也可以参照这个链接: http://blogs.msdn.com/b/devdave/archive/2008/10/18/customizing-a-tooltip.aspx

    2012年8月31日 6:23
    版主