【问题标题】:WPF Binding XAML vs C#WPF 绑定 XAML 与 C#
【发布时间】:2011-02-28 14:13:17
【问题描述】:

我遇到了一个奇怪的问题 - 通过 XAML 创建的绑定(通过标记扩展或普通方式)不起作用(BindingOperations.IsDataBound 返回 false,实际上没有创建 Binding 对象)。当我从代码中做同样的事情时,一切都运行良好。

另一件事是 XAML 中的绑定是在 DataTemplate 中创建的 - 当我第一次使用 DataTemplate 失败时,这很有趣,然后我从代码中修复它(添加到特定对象的绑定)并添加更多对象到集合中,XAML 中的绑定集才有效。如果我尝试从集合中删除所有对象,然后添加一个新对象,则绑定再次失败。

实际上,这是我的另一个问题的简化版本。详情请参考: WPF Debugging AvalonEdit binding to Document property

很抱歉这样做,但没有答案,可能太长了,任何人都无法阅读。

    -

【问题讨论】:

标签: c# wpf xaml data-binding


【解决方案1】:

输出窗口中是否有任何异常跟踪? WPF 通常会在那里抱怨,而不是仅仅让程序失败。

【讨论】:

  • 是的。 “无法使用绑定检索值,并且不存在有效的后备值;改为使用默认值。”永远不会调用吸气剂,这就是为什么这很奇怪。我想这是一些时间问题,但我不确定,即使是我也不知道该怎么做。
【解决方案2】:

问题可能与您使用 IsAsync 以及目标属性处理无效结果的一些问题有关。您可能想尝试摆脱 IsAsync 参数或使用 PriorityBinding 设置更安全的默认值,以便在等待异步加载完成时使用。

【讨论】:

  • 感谢您的回答。不幸的是,这并不能解决问题。 IsAsync 只是我尝试了所有可能的参数组合的证据。
猜你喜欢
  • 2011-02-05
  • 1970-01-01
  • 2011-07-15
  • 1970-01-01
  • 1970-01-01
  • 2011-08-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多