【发布时间】:2009-12-08 03:45:38
【问题描述】:
如何将“myElement”的 DataContext 设置为与 XAML 中的用户控件相同的 DataContext?我已经能够通过 UserControl 构造函数中的myElement.DataContext = this.DataContext 在代码隐藏中做到这一点,但我试图了解如何在 XAML 中做同样的事情。
这与创建逻辑树的虚拟分支有关(参见article)。
<UserControl ... DataContext="{Binding RelativeSource={RelativeSource self}}">
...
<TextBox Name="myTextBox">
<TextBox.Text>
<Binding Path="MySource" UpdateSourceTrigger="PropertyChanged">
<Binding.ValidationRules>
<base:StringEqualsRules>
<base:StringEqualRule.BoundElement>
<base:ValidationRuleElement
x:Name="myElement"
DataContext="???"
Value="{Binding MyProperty}" />
</base:StringEqualRule.BoundElement>
</base:StringEqualsRule>
</Binding.ValidationRules>
</Binding>
</TextBox.Text>
</TextBox>
...
</UserControl>
【问题讨论】:
标签: c# .net wpf data-binding xaml