我有一个ListBox的ItemsSource绑定到一个对象列表。 Listbox有一个带有包含TextBlock的DataTemplate的ItemTemplate。文本块的文本被绑定到对象的Name属性(即Text =“{Binding Name}”)。在WPF中如何更改代码中的DataTemplate的文本块的文本绑定?
我想提供一个单选按钮来显示同一列表的不同视图。例如,允许用户在Name属性和ID属性之间切换。
我在2381740找到了这个答案,但我也在数据模板中设置了边框和文本框样式(请参阅下面的代码)。
有没有办法重置文本块绑定?我不想重新创建整个数据模板。其实我甚至不知道如何做到这一点,是否有一种简单的方法来将xaml翻译成代码?
感谢 科迪
<DataTemplate>
<Border Margin="0 0 2 2"
BorderBrush="Black"
BorderThickness="3"
CornerRadius="4"
Padding="3">
<TextBlock Style="{StaticResource listBoxItemStyle}"
Text="{Binding Name}" />
</Border>
</DataTemplate>
这是更好的解决方案,尤其是因为它支持显示两者。谢谢! – code 2010-06-29 19:53:28
是的,这是一个非常好的解决方案,因为要求将两个值绑定到单选按钮。 (+1)您也可能对我添加的更一般的解决方案感兴趣。 – 2010-06-30 00:54:50