要将值绑定到TextBlock
,我们使用以下语法显示有界对象的< ItemName> 属性。
<TextBlock Text="{Binding Path=ItemName}" />
但是有一种语法可以使用上面的标记将常量字符串&#39; <&em>&#39; 与数据绑定属性连接起来,以便显示如下内容: TextBlock
答案 0 :(得分:2)
您可以在绑定中使用StringFormat
,如下所示:
<TextBox Text="{Binding ItemName, StringFormat={}Item: {0}}"/>
话虽如此,编辑时可能会导致一些意外行为。例如,如果用户只编辑项目名称(不包括'Item:'文本),那么当TextBox失去焦点时,字符串格式将显示为“Item:Item:xyz”,这有点奇怪。可能有办法解决这个问题,但现在没有任何想法。
但是,如果用户清除整个TextBox,然后设置名称,那么这一切都很好,花花公子。
否则,在TextBlock
前面使用TextBox
可能会更好。像这样:
<StackPanel Orientation="Horizontal">
<TextBlock Text="Item:" VerticalAlignment="Center"
Margin="0,0,6,0"/>
<TextBox Text="{Binding ItemName}"/>
</StackPanel>