【问题标题】:Difference between PATH= and PATH=. on DataBindingPATH= 和 PATH= 之间的区别。关于数据绑定
【发布时间】:2014-10-26 18:59:15
【问题描述】:

我刚刚在c#上成功使用了属性Binding,我看到了两种方法: Binding="{Binding Path=DataBinded}"Binding="{Binding Path=.DataBinded}"

它们都在工作,但如果有两种写法,那是有原因的……Path= 和 Path= 有什么区别。 ?

【问题讨论】:

  • 你见过this SO post吗?简而言之,{Binding Path=.} 绑定到源本身,例如,当您不想绑定到数据源上的特定属性,而是绑定到数据源本身时,您可以使用它。可能值得检查this blog post
  • @michaelmoore 双向绑定非常有趣。我必须掌握这一点。

标签: c# wpf data-binding binding path


【解决方案1】:

通常. 引用前面的对象并允许您指向子属性,您也可以将其视为分隔符。如问题中所述,没有前面的对象,因此在这种情况下,. 指的是 DataContext 本身,因此 Binding="{Binding Path=DataBinded}"Binding="{Binding Path=.DataBinded}" 相等

当你想直接绑定一些文本值时,可以考虑下面的例子

<TextBlock Text="{Binding}" />

<TextBlock Text="{Binding Path=.}" />

上面的两个例子都指向 TextBlock 的 DataContext 并且会绑定到同一个。

【讨论】:

    【解决方案2】:

    使用句点路径(“Path=.”)将绑定到当前源 :)

    您可以在备注部分(最后一点)下阅读文档here

    【讨论】:

      猜你喜欢
      • 2015-11-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-18
      • 2012-08-21
      • 1970-01-01
      相关资源
      最近更新 更多