【问题标题】:WPF troubleshooting: is there a way to see why binding fails?WPF 疑难解答:有没有办法查看绑定失败的原因?
【发布时间】:2011-03-08 10:54:00
【问题描述】:

所以,我正在尝试使以下工作:

<Style x:Key="ToolTipVisibility" TargetType="{x:Type StackPanel}">
   <Setter Property="Visibility" Value="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Window}},Path=EnabledToolTips}" />

从 xaml 控件内部调用它,该属性在我的主窗口中:

public Visibility EnabledToolTips {
    get { return Visibility.Collapsed; } //  testing
}

没有失败,它只是显示默认的工具提示行为。

有没有办法分析 wpf 绑定过程,看看为什么会失败?寻找解决此类案例的方法..

【问题讨论】:

  • 在这种特殊情况下,您可以在“EnabledToolTips”属性上放置一个断点,以查看调试器是否停止。
  • 我有,不,它没有被击中。绑定无法找到我将其绑定到的内容.. 我需要了解有关绑定的更多信息:)

标签: wpf binding


【解决方案1】:

【讨论】:

    【解决方案2】:

    你需要阅读Bea Stollnitz Blog 基本上,归结为:

    将此 xmlns 添加到您的 .xaml 文件中......

    xmlns:diagnostics="clr-namespace:System.Diagnostics;assembly=WindowsBase"
    

    现在,将其添加到您要调试的绑定中。你会得到大量的信息

    diagnostics:PresentationTraceSources.TraceLevel=High
    

    【讨论】:

    • 这篇文章很有帮助。就我而言,包括这些属性并没有提供更多调试信息。与“找不到绑定源...”等相同的行 ..
    【解决方案3】:

    调试时,输出窗口应该会给你一些信息。

    【讨论】:

    • 正确!谢谢。我会保持开放一天,以防有其他想法出现
    猜你喜欢
    • 2011-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多