如何在标签中将硬编码文本与绑定文本合并在一起?

时间:2018-10-29 10:42:30

标签: wpf

我想使用一个列表框来将标签分为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>

问题在于以这种方式对齐文本有点困难,而且我猜想必须只用一个标签就能完成所有这些操作,但是我不知道绑定文本的语法标签的内容。

1 个答案:

答案 0 :(得分:1)

使用TextBlock,其中包含三个Run元素。每次运行都可以将其text属性设置为常量或数据绑定。

<TextBlock>
    <Run Text="TAX" />
    <Run Text="{Binding Item1}" />
    <Run Text="%"/>
</TextBlock>