这是一件好事,我不介意感到愚蠢。在数据层次结构中绑定三个级别
我想绑定到我的视图模型上的ObservableCollection。数据层次结构如下所示:父 - 包含 - 子对象的列表。没什么复杂。
在我的XAML中树的最外面的网格我建立一个链接到视图模型:
<Grid DataContext="{StaticResource src}">
是的,SRC并引用视图模型,并在出现问题之前文本框做工精细的二十几绑定。我的Xaml树中没有另一个DataContext。现在我来到一个简单的文本框。我想将文本框文本绑定到child.property。
这工作:
<TextBlock
DataContext="{Binding Parent}"
Text="{Binding Path=Child.Property}"
Style="{StaticResource headerMajor}"
/>
这不起作用:
<TextBlock
Text="{Binding Source=Parent,Path=Child.Property}"
Style="{StaticResource headerMajor}"
/>
我以为他们是说同样的事情的两个方面。通常我想了一会儿,然后继续编码。不过,我读过的一些建议提到,埋在Xaml控件中的DataContext属性可能导致难以发现的错误。
请解释为什么一个人工作,另一个不工作。这将有助于我掌握整个具有约束力的话题。
吉姆
请看[编辑帮助](http://stackoverflow.com/editing-help#code)。 –