我想使用一个列表框来将标签分为3部分。第一部分是硬编码的文本,第二部分是视图模型中绑定属性的值,最后一部分也是硬编码的文本。
这个主意是这样的:
<ListBox x:Name="list1" ItemsSource="{Binding IvasConImportes}"
BorderBrush="Transparent"
BorderThickness="0"
Background="Transparent">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Label Name="lblIvaParte01" Content="TAX " HorizontalAlignment="Left" HorizontalContentAlignment="Right" Width="6.4cm" Margin="0,0,0,0" Padding="0,0,0,0" VerticalAlignment="Top"/>
<Label Name="lblIvaParte02" Content="{Binding Item1}" HorizontalAlignment="Left" HorizontalContentAlignment="Left" Width="6.4cm" Margin="0,0,0,0" Padding="0,0,0,0" VerticalAlignment="Top"/>
<Label Name="lblIvaParte03" Content="%" HorizontalAlignment="Left" HorizontalContentAlignment="Left" Width="6.4cm" Margin="0,0,0,0" Padding="0,0,0,0" VerticalAlignment="Top"/>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
问题在于以这种方式对齐文本有点困难,而且我猜想必须只用一个标签就能完成所有这些操作,但是我不知道绑定文本的语法标签的内容。
答案 0 :(得分:1)
使用TextBlock
,其中包含三个Run
元素。每次运行都可以将其text属性设置为常量或数据绑定。
<TextBlock>
<Run Text="TAX" />
<Run Text="{Binding Item1}" />
<Run Text="%"/>
</TextBlock>