XAML:如何将百分号添加到绑定标签值?

时间:2010-03-16 16:39:37

标签: xaml format label bind

我有一个标签绑定到滑块的值。

Content="{Binding Path=Value, ElementName=Slider}"

如何附加百分比符号?滑块的值已经正确格式化,所以当值为'50'时,我只需要'50%'。

我知道如何在代码中执行此操作,但我希望在xaml中完成此操作而不创建转换器。 TIA

5 个答案:

答案 0 :(得分:17)

这对我来说很好(在Kaxaml中测试):

<StackPanel>  
  <Slider Minimum="0" Maximum="100" x:Name="slider" />
  <TextBlock Text="{Binding Path=Value, ElementName=slider, StringFormat='\{0\}%'}" />
</StackPanel>

如果没有反斜杠,我会收到一条错误消息,指出%字符在该位置无效。

答案 1 :(得分:7)

StringFormat也可以这种格式使用

Content="{Binding Path=Value, ElementName=Slider, StringFormat=P2}"

答案 2 :(得分:3)

我遇到了类似的问题并根据@ Wiesel的答案解决了这个问题:

<Label Content="{Binding Value, ElementName=Slider}" 
       ContentStringFormat="{}{0}%"/>

答案 3 :(得分:1)

您可以像这样使用StringFormat

Content="{Binding Path=Value, ElementName=Slider, StringFormat='{0}%'}"

答案 4 :(得分:1)

以下是WPF&gt; = 3.5 SP1的解决方案:

<Label Content="{Binding Path=Value, ElementName=Slider}" 
       ContentStringFormat="{0}%" />