所以我有TextBlock
:
<TextBlock
Text="{Binding Path=Value, ElementName=progressBarColumn, StringFormat={}{0:N2}%}"
VerticalAlignment="Center"
HorizontalAlignment="Center"
Foreground="{DynamicResource ProgressBarForegroundColor}"
FontFamily="{DynamicResource ProgressBarFontFamily}"
FontSize="{DynamicResource ProgressBarFontSize}"/>
我希望能够将String Format
从N2
控制到N1
等等,所以我创建了这个:
<system:String x:Key="ProgressBarStringFormat">N2</system:String>
用法:
Text="{Binding Path=Value, ElementName=progressBarColumn, StringFormat={}{0:ProgressBarStringFormat}%}"
在我的Progress-Bar
而不是Value
我只看到ProgressBarStringFormat
文字。
答案 0 :(得分:0)
除了Binding属性的文字之外,你什么也没有。但是,如果您愿意使用ContentControl或Label而不是TextBlock,则可以在其ContentStringFormat
属性上粘贴DynamicResource或Binding:
<Label
Margin="0"
Content="{Binding Value, ElementName=progressBarColumn}"
ContentStringFormat="{DynamicResource ProgressBarStringFormat}"
VerticalAlignment="Center"
HorizontalAlignment="Center"
Foreground="{DynamicResource ProgressBarForegroundColor}"
TextElement.FontFamily="{DynamicResource ProgressBarFontFamily}"
TextElement.FontSize="{DynamicResource ProgressBarFontSize}"
/>
我将边距设置为零,因为与TextBlock不同,Label会以隐式样式设置默认边距。