如何绑定单个TextBlock以表示“Hi,Jeremiah”?如何正确添加前缀(或后缀)到XAML中的数据绑定?
<TextBlock Text="Hi, {Binding Name, Mode=OneWay}"/>
寻找一个优雅的解决方案。那里有什么?我试图避免为每个前缀/后缀组合编写一个转换器。
如何绑定单个TextBlock以表示“Hi,Jeremiah”?如何正确添加前缀(或后缀)到XAML中的数据绑定?
<TextBlock Text="Hi, {Binding Name, Mode=OneWay}"/>
寻找一个优雅的解决方案。那里有什么?我试图避免为每个前缀/后缀组合编写一个转换器。
如果您只需要插入一个值,则可以使用Binding的StringFormat属性。请注意,此需要.NET 3.5 SP1(或.NET 3.0 SP2),因此只有在可以指望拥有最新Service Pack的生产环境时才使用它。
<TextBlock Text="{Binding Name, Mode=OneWay, StringFormat='Hi, {0}'}"/>
如果你想插入两个或多个不同的界限值,我通常只是做与包含多个的TextBlocks,例如方向=“横向”一个StackPanel:
<StackPanel Orientation="Horizontal">
<TextBlock Text="Good "/>
<TextBlock Text="{Binding TimeOfDay}"/>
<TextBlock Text=", "/>
<TextBlock Text="{Binding Name}"/>
<TextBlock Text="!"/>
</StackPanel>
我认为这应该做到这一点。
<TextBlock>
<TextBlock Text="Hi, " />
<TextBlock Text="{Binding Name, Mode=OneWay}" />
</TextBlock>
校正(未成年人)@Joe白的解决方案
<TextBlock Text="{Binding Name, Mode OneWay, StringFormat='Hi {0}}'"/>
单引号都需要申请的StringFormat成功
为我工作:)
看起来你接受的答案可能是WPF只有 - 你可能会删除Silverlight标签。 – 2009-06-23 21:23:33