WPF绑定自己

Sna*_*ake 80 data-binding wpf binding self

我有一个WPF Window,在某个地方有一个ListView我绑定List<string>到的地方.

现在在什么地方我ListView有一个TextBoxContent属性设置为{Binding}.

但这是速记.如何编写完整绑定以绑定到自身?

{Binding Path=Self}不起作用,也不起作用{Binding Self}(后者是前者的捷径).

Hei*_*nzi 230

简短的回答:{Binding}不是为"结合自身"(在意义上的快捷方式RelativeSource.Self).相反,{Binding} 它等同于 {Binding Path=.}绑定到当前源的.


详细说明:绑定具有路径.例如,您可以使用"绑定到自身"

<myUIControl myProperty="{Binding RelativeSource={RelativeSource Self}, Path=x}" />
Run Code Online (Sandbox Code Playgroud)

但是,这会将设置为控件本身,因此它将尝试访问xUI控件的属性(而不是x当前数据上下文的属性).从我如何理解你的问题,这不是你想要的; 特别是,它不是{Binding}那样做的:{Binding}保持源的原样(通常DataContext是某些父元素)并绑定到源本身(相当于Path=.).