如何将硬编码文本与标签中的绑定文本连接起来? [复制]
Posted
技术标签:
【中文标题】如何将硬编码文本与标签中的绑定文本连接起来? [复制]【英文标题】:How can I concat hard-coded text with a binding text in a label? [duplicate] 【发布时间】:2019-04-02 06:46:54 【问题描述】:我想使用一个列表框来制作一个包含 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】:使用一个TextBlock
,其中包含三个Run
元素。每次运行都可以将其文本属性设置为常量或数据绑定。
<TextBlock>
<Run Text="TAX" />
<Run Text="Binding Item1" />
<Run Text="%"/>
</TextBlock>
【讨论】:
注意Run
默认绑定TwoWay
。如果Item1
是一个只能获取的属性,你会得到一个异常。
谢谢。是的,该属性是只读的,但我可以将绑定模式更改为一种方式并解决问题。感谢您的提示。以上是关于如何将硬编码文本与标签中的绑定文本连接起来? [复制]的主要内容,如果未能解决你的问题,请参考以下文章