Wpf 字符串格式轴标签

Wpf 字符串格式轴标签,wpf,formatting,charts,Wpf,Formatting,Charts,我将把我的StringFormat={}{0:C}放在哪里以使轴标签具有货币格式 <DVC:LinearAxis Orientation="X" Interval="500000" ShowGridLines="True" Minimum="0" > <DVC:LinearAxis.AxisLabelStyle> <

我将把我的StringFormat={}{0:C}放在哪里以使轴标签具有货币格式

<DVC:LinearAxis Orientation="X" Interval="500000" ShowGridLines="True" Minimum="0" >
                                    <DVC:LinearAxis.AxisLabelStyle>
                                        <Style TargetType="DVC:AxisLabel">
                                            <Setter Property="Template">
                                                <Setter.Value>
                                                    <ControlTemplate TargetType="DVC:AxisLabel">
                                                        <TextBlock Text="{TemplateBinding FormattedContent}">
                                                            <TextBlock.LayoutTransform>
                                                                <RotateTransform Angle="60"/>
                                                            </TextBlock.LayoutTransform>
                                                        </TextBlock>
                                                    </ControlTemplate>
                                                </Setter.Value>
                                            </Setter>
                                        </Style>
                                    </DVC:LinearAxis.AxisLabelStyle>
                                </DVC:LinearAxis>

未经测试,但我认为这会起作用:

<TextBlock Text="{TemplateBinding FormattedContent, StringFormat={}{0:C}}">

这是您发布的代码的第7行。

未经测试,但我认为这会起作用:

<TextBlock Text="{TemplateBinding FormattedContent, StringFormat={}{0:C}}">
这是您发布代码的第7行。

这可能会对您有所帮助

这对你有帮助


HTH

ContentStringFormat在SL4上不再工作,这种方式对我很有效,建议如下:

如果只需要StringFormat:

<TextBox DataContext="{TemplateBinding Value}" 
 Text="{Binding StringFormat='\{0:MM/dd HH:mm\} '}"/>
或者,如果要使用转换器:

<TextBox DataContext="{TemplateBinding Value}"
  Text="{Binding Converter={StaticResource Double2String}}"/>

我希望这种方法能帮助别人,我花了很多时间来找到正确的方法。

ContentStringFormat不再适用于SL4,这种方法对我有效,建议如下:

如果只需要StringFormat:

<TextBox DataContext="{TemplateBinding Value}" 
 Text="{Binding StringFormat='\{0:MM/dd HH:mm\} '}"/>
或者,如果要使用转换器:

<TextBox DataContext="{TemplateBinding Value}"
  Text="{Binding Converter={StaticResource Double2String}}"/>

我希望这种方式能帮助一些人,我花了很多时间来找到正确的方法。

更好的是,你可以继续,在X、Y轴上放置自定义文本,而不仅仅是数字或日期。你所需要的只是一个转换器,将一个数值、日期转换成一个更有意义的文本

<chartingToolkit:LinearAxis Orientation="X" ShowGridLines="True">
                <chartingToolkit:LinearAxis.AxisLabelStyle>
                    <Style TargetType="chartingToolkit:AxisLabel">
                        <Setter Property="Template">
                            <Setter.Value>
                                <ControlTemplate TargetType="chartingToolkit:AxisLabel">
                                    <TextBlock Text="{TemplateBinding FormattedContent, Converter={StaticResource MileTextConverter}}"></TextBlock>
                                </ControlTemplate>
                            </Setter.Value>
                        </Setter>
                    </Style>
                </chartingToolkit:LinearAxis.AxisLabelStyle>
            </chartingToolkit:LinearAxis>

更好的是,您可以继续并在X、Y轴上放置自定义文本,而不仅仅是数字或日期。你所需要的只是一个转换器,将一个数值、日期转换成一个更有意义的文本

<chartingToolkit:LinearAxis Orientation="X" ShowGridLines="True">
                <chartingToolkit:LinearAxis.AxisLabelStyle>
                    <Style TargetType="chartingToolkit:AxisLabel">
                        <Setter Property="Template">
                            <Setter.Value>
                                <ControlTemplate TargetType="chartingToolkit:AxisLabel">
                                    <TextBlock Text="{TemplateBinding FormattedContent, Converter={StaticResource MileTextConverter}}"></TextBlock>
                                </ControlTemplate>
                            </Setter.Value>
                        </Setter>
                    </Style>
                </chartingToolkit:LinearAxis.AxisLabelStyle>
            </chartingToolkit:LinearAxis>

否定,尝试了-在类型“TemplateBindingExtension”中找不到属性“StringFormat”。否定,尝试了-在类型“TemplateBindingExtension”中找不到属性“StringFormat”。这使我找到了答案…直接添加到我的XAML行之后。谢谢如果是这样的话,那么你也可以把它放在你的第一行,比如:这让我找到答案……直接添加到我的XAML行之后。谢谢如果是这样的话,你也可以把它放在第一行,比如: