3

我在 Web 应用程序 (ASP.Net) 中有一个 ASP:Chart 控件。它们用于显示一些基本的会计信息,如下所示:

可爱的图表

但是,我希望能够将小数点分隔符更改为逗号,以便在使用逗号的其他国家/地区显示,例如 -28606.62 应显示为 -28606,62。

我知道我可以在页面后面的代码中更改当前的文化,这将正确格式化数字,但是我不愿意这样做,因为这会改变线程/页面的文化,因此可能会改变任何计算等在页面的生命周期内完成可能会搞砸。

是否有另一种方法可以在 ASP:Chart 控件上指定小数点分隔符?

我尝试过使用LabelStyle.Format属性,但这不允许您更改分隔符,只能更改数字的格式。

非常感谢

4

1 回答 1

3

您应该在图表控件上使用FormatNumber事件,如下所示:

yourChart.FormatNumber += Chart_FormatLocalisedNumber;

你的事件代码:

     private void Chart_FormatLocalisedNumber(object sender, FormatNumberEventArgs e)
     {
            e.LocalizedValue = e.Value.ToString("N2", YourFormatProvider);
     } 

在事件中,您可以将 e.LocalizedValue 设置为您想要的任何内容,这将是图表上显示的内容。

在上面的示例中,我使用了一个标准数字格式字符串并传入了一个格式提供程序(例如 new Culture("nl-NL")),它具有“,”作为十进制符号。

于 2016-08-12T16:44:35.543 回答