如何在我的ComboBox项目中实现此行为:(n): Name
其中n和Name是两个可绑定属性。现在我有n Name
这是我的代码:
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock>
<Run Text="{Binding n}" />
<Run Text="{Binding Name}" />
</TextBlock>
</DataTemplate>
</ComboBox.ItemTemplate>
我认为可以添加两个<Run Text="("/>
等等,但XAML中必须有更优雅的东西。
答案 0 :(得分:1)
好的很容易:
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock>
<TextBlock.Text>
<MultiBinding StringFormat="{}({0}): - {1}">
<Binding Path="n" />
<Binding Path="Name" />
</MultiBinding>
</TextBlock.Text>
</TextBlock>
</DataTemplate>
</ComboBox.ItemTemplate>
答案 1 :(得分:1)
另一种方法是使用多个TextBlock,如下所示:
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Path=...}"></TextBlock>
<TextBlock Text="{Binding Path=...}"></TextBlock>
</StackPanel>
</DataTemplate>
您可以使用WrapPanel或任何您喜欢的内容替换StackPanel。