You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WPF中如何设置SfChart图表Tooltip的数字千分位分隔符格式

为WPF SfChart的SplineSeries Tooltip设置千分位格式

我使用C# WPF及Syncfusion组件操作SfChart控件,已为图表主轴、次轴、图例设置千分位格式(#,#),且启用了SplineSeries的Tooltip,但需要为该Tooltip设置数字千分位分隔符格式。原XAML代码如下:

<syncfusion:SfChart Visibility="Visible" Margin="5">
            
    <syncfusion:SfChart.Behaviors>
        <syncfusion:ChartZoomPanBehavior EnableMouseWheelZooming="True" EnablePinchZooming="True"  EnableZoomingToolBar="True" EnablePanning="True" ZoomRelativeToCursor="True" >
        </syncfusion:ChartZoomPanBehavior>
    </syncfusion:SfChart.Behaviors>

    <syncfusion:SfChart.PrimaryAxis>
        <syncfusion:CategoryAxis LabelFormat="#,#"/>
    </syncfusion:SfChart.PrimaryAxis>
    
    <syncfusion:SfChart.SecondaryAxis>
        <syncfusion:NumericalAxis Header="مبلغ" LabelFormat="#,#" />
    </syncfusion:SfChart.SecondaryAxis>
    
    <chart:SfChart.Legend>
        <chart:ChartLegend DockPosition="Top" ItemStringFormat="#,#"/>
    </chart:SfChart.Legend>

    
    <syncfusion:SplineSeries  ItemsSource="{Binding PISH_90_DATA}" Label="پیش فاکتور های 90 روزه"  EnableAnimation="True" XBindingPath="DD" YBindingPath="MABL_K"  ShowTooltip="True">
        <syncfusion:SplineSeries.AdornmentsInfo>
            <chart:ChartAdornmentInfo  ShowLabel="False" SegmentLabelFormat="#,#">
            </chart:ChartAdornmentInfo>
        </syncfusion:SplineSeries.AdornmentsInfo>
    </syncfusion:SplineSeries>

</syncfusion:SfChart>

解决方案

方法1:全局统一设置Tooltip格式

在SfChart的Behaviors集合中添加ChartTooltipBehavior,指定其LabelFormat为千分位格式#,#,所有Series的Tooltip都会自动应用该格式:

<syncfusion:SfChart.Behaviors>
    <syncfusion:ChartZoomPanBehavior EnableMouseWheelZooming="True" EnablePinchZooming="True"  EnableZoomingToolBar="True" EnablePanning="True" ZoomRelativeToCursor="True" />
    <!-- 添加Tooltip行为并设置千分位格式 -->
    <syncfusion:ChartTooltipBehavior LabelFormat="#,#" />
</syncfusion:SfChart.Behaviors>

方法2:单个Series自定义Tooltip模板

如果需要针对当前SplineSeries定制Tooltip布局或格式,可以设置Series的TooltipTemplate,在模板中对绑定的数值应用千分位格式:

<syncfusion:SplineSeries  ItemsSource="{Binding PISH_90_DATA}" Label="پیش فاکتور های 90 روزه"  EnableAnimation="True" XBindingPath="DD" YBindingPath="MABL_K"  ShowTooltip="True">
    <syncfusion:SplineSeries.AdornmentsInfo>
        <chart:ChartAdornmentInfo  ShowLabel="False" SegmentLabelFormat="#,#">
        </chart:ChartAdornmentInfo>
    </syncfusion:SplineSeries.AdornmentsInfo>
    <!-- 自定义Tooltip模板,对Y值应用千分位格式 -->
    <syncfusion:SplineSeries.TooltipTemplate>
        <DataTemplate>
            <StackPanel>
                <TextBlock Text="{Binding Item.DD}" />
                <TextBlock Text="{Binding Item.MABL_K, StringFormat='#,#', Mode=OneWay}" />
            </StackPanel>
        </DataTemplate>
    </syncfusion:SplineSeries.TooltipTemplate>
</syncfusion:SplineSeries>

说明

  • 方法1操作简单,适合全局统一配置所有Tooltip的格式;
  • 方法2灵活性更高,可自定义Tooltip的布局样式,也能针对单个Series设置差异化格式。

内容的提问来源于stack exchange,提问作者Learner

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 16:25:10