【发布时间】:2014-07-20 10:07:20
【问题描述】:
任何人都遇到了将相同的DataContext 绑定到 TextBlock 中的 Text 属性(例如)的情况。
我必须分配 DataContext 以根据我的风格中的 Datacontext 中的数据值反映一些触发器。同时,在对IValueConverter/IMultivalueConverter 应用一些转换后,我需要绑定相同的 DataContext 对象以获取 Text 属性。
据我所知{Binding},只需绑定当前数据上下文即可。但是在同样的场景下如何使用转换器呢?
任何建议将不胜感激。
<TextBlock Style="{StaticResource DataEntryTextBlock1}" Grid.Row="1"
DataContext="{Binding MyField1}"
Text="{Binding MyField1, Converter={StaticResource myConverter}}">
</TextBlock>
此 XAML 脚本不起作用,因为文本绑定正在尝试在 MyField1 中查找 MyField1 变量。
谢谢, 维诺德
【问题讨论】:
-
DataContext="{Binding MyField1}" 意味着您已经在更高的元素上设置了 DataContext。例如,如果您在
上设置上下文,则子元素可以知道它,而不必在每个子元素中再次指定它。