如何对单个 TextBlock 进行数据绑定(bind)以说“嗨,耶利米”?
<TextBlock Text="Hi, {Binding Name, Mode=OneWay}"/>
寻找一个优雅的解决方案。外面有什么?我试图避免为每个前缀/后缀组合编写转换器。
最佳答案
如果您只有一个值需要插入,您可以使用 Binding 的 StringFormat属性(property)。请注意,这需要 .NET 3.5 SP1(或 .NET 3.0 SP2),因此只有在您的生产环境拥有最新服务包时才使用它。
<TextBlock Text="{Binding Name, Mode=OneWay, StringFormat='Hi, {0}'}"/>
如果您想插入两个或更多不同的绑定(bind)值,我通常只制作一个包含多个 TextBlock 的 Orientation="Horizontal"的 StackPanel,例如:
<StackPanel Orientation="Horizontal">
<TextBlock Text="Good "/>
<TextBlock Text="{Binding TimeOfDay}"/>
<TextBlock Text=", "/>
<TextBlock Text="{Binding Name}"/>
<TextBlock Text="!"/>
</StackPanel>
关于c# - 如何正确地为 XAML 中的数据绑定(bind)添加前缀(或后缀)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1034611/