为什么在这种情况下DataBinding不起作用反之亦然?

时间:2011-06-30 16:06:16

标签: wpf 2-way-object-databinding

第一个具有所需的效果 - 在文本框中更改文本并且标签的内容发生更改,而第二个则没有。为什么呢?

 <StackPanel>
        <Label Name="displayText" Content="{Binding ElementName=displayText, Path=Content, Mode=TwoWay}"/>
        <TextBox Name="sourceInfo"/>
    </StackPanel>

<StackPanel>
        <Label Name="displayText"/>
        <TextBox Name="sourceInfo" Text="{Binding ElementName=displayText, Path=Content, Mode=TwoWay}"/>
    </StackPanel>

1 个答案:

答案 0 :(得分:1)

这两项工作:

  <StackPanel>
     <Label Name="displayText2" 
            Content="{Binding ElementName=sourceInfo2, Path=Text, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
     <TextBox Name="sourceInfo2"/>
  </StackPanel>

  <StackPanel>
     <Label Name="displayText"/>
     <TextBox Name="sourceInfo" 
              Text="{Binding ElementName=displayText, Path=Content, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
  </StackPanel>

您需要绑定到正确项目上的正确属性。在大写的情况下,您将标签添加到其自己的Content属性... oops。