【发布时间】:2011-09-15 17:47:39
【问题描述】:
我有一个绑定到 ItemsSource 集合中的属性的 Textblock。我想在同一个文本块中显示该类的两个属性,但似乎我一次只能执行一个绑定。 我目前有这个:
Text="{Binding Title}"
但我想附加另一个属性,所以理论上它会是:
Text="{Binding Title - Author}"
输出看起来像“莎士比亚 - 罗密欧与朱丽叶”。我尝试添加逗号、另一个绑定和其他内容,但它们都会导致抛出异常(例如元素 TextBlock 上的未知属性 Text)。
两个属性都来自同一个类,所以我不需要两个数据源。
【问题讨论】:
-
您使用的是 MVVM 模式吗?如果是这样,只需在您的视图模型上创建另一个以您希望的方式返回字符串的属性。
-
如果您使用的是 MVVM 模式中的 ViewModel,您只需添加一个属性即可满足您的需求。顺便说一句,为什么不使用 2-3 texblocks?
-
不使用 MVVM。我尝试使用多个文本块,但我需要将文本彼此相邻放置,并且某些文本比其他文本长,因此将它们完全对齐会很棘手。
标签: c# silverlight xaml binding textblock