【问题标题】:WPF binding screentip with relative sourceWPF 绑定屏幕提示与相对源
【发布时间】:2010-09-13 20:18:00
【问题描述】:

我原以为屏幕提示的标题也会显示“X”,但它是空的:

<Fluent:Button x:Name="rbNewProject"
        Header="X">

    <Fluent:Button.ToolTip>
        <Fluent:ScreenTip Title="{Binding Header, RelativeSource={RelativeSource FindAncestor, AncestorType=Fluent:Button}}">
        </Fluent:ScreenTip>
    </Fluent:Button.ToolTip>

</Fluent:Button>

我怀疑我的绑定表达式是错误的,但我想不通...

【问题讨论】:

    标签: wpf binding relativesource


    【解决方案1】:

    不幸的是,FindAncestor 不适用于工具提示,因为它们不是目标元素的 VisualTree 的一部分。您可以做的是将 ToolTip 的 DataContext 设置为其 PlacementTarget(即您的示例中的 Fluent:Button),以便工具提示的其他 Binding 语句与 PlacementTarget 作为绑定源一起工作。

    在你的情况下,试试这个代码:

    <Fluent:Button x:Name="rbNewProject"
            Header="X">
    
        <Fluent:Button.ToolTip>
            <Fluent:ScreenTip DataContext="{Binding PlacementTarget, RelativeSource={RelativeSource Self}}" Title="{Binding Header}">
            </Fluent:ScreenTip>
        </Fluent:Button.ToolTip>
    
    </Fluent:Button>
    

    可以在此处找到有关此“技术”的更多信息:http://karlshifflett.wordpress.com/2007/12/29/wpf-sample-series-data-binding-in-tooltip/

    【讨论】:

      猜你喜欢
      • 2018-11-27
      • 1970-01-01
      • 2021-08-27
      • 1970-01-01
      • 2011-03-26
      • 1970-01-01
      • 2018-09-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多