WPF绑定语法问题

时间:2010-03-23 17:53:13

标签: wpf binding datacontext

我已经看到这种语法出现了,并试图谷歌因为它的定义无济于事;当dp以这种方式绑定时,它意味着什么?

<Grid>
    <ContentControl Content="{Binding}"/>
</Grid>

我假设您必须绑定到DataContext上的某个属性或其他元素,但这似乎没有绑定。

4 个答案:

答案 0 :(得分:7)

我相信这意味着你绑定到任何绑定上下文的根。因此,如果在作为某种列表控件的一部分的datatemplate中使用此语法,则将绑定到父控件(列表控件)绑定到的任何根级别。

答案 1 :(得分:3)

我相信{Binding}指的是DataContext本身。

编辑(澄清):通过DataContext我的意思是当前级别的DataContext。例如,如果窗口的DataContext绑定到List,那么将窗口中ListBox控件上的ItemsSource设置为{Binding}会将ListBox绑定到List本身,而不是List的属性,如Count。

答案 2 :(得分:0)

{Binding}用于{Binding [CurrentDataContext]}

答案 3 :(得分:0)

{Binding}意味着您要绑定到可以在对象本身上设置的当前DataContext。如果当前对象上没有设置DataContext,那么它将向上走VisualTree并找到最接近的具有DataContext的Parent。