【问题标题】:Blazor using double to set position of component use a comma instead of a dot ( 10,5% in stead of 10.5%)Blazor 使用双精度设置组件位置使用逗号而不是点(10,5% 而不是 10.5%)
【发布时间】:2021-08-27 01:58:24
【问题描述】:

当我设置 Blazor 组件的位置时,它会发送到浏览器 10,5 而不是 10.5。我想应该用不变的文化来完成,但我找不到在哪里添加它。

style="position: relative ; top: @(_offsetY)%; left: @(_offsetX)%;"

private double _offsetX = 10.5;
private double _offsetY = 10.5;

【问题讨论】:

  • 我已经对此进行了测试,但没有看到逗号。但是样式中的值是字符串,为什么不用ToString呢?

标签: blazor globalization


【解决方案1】:

文本字符串中数字和日期的呈现是文化敏感的,因此如果浏览器具有非英语文化,例如DE-de(德语)它将遵循该约定。

按照建议使用ToString() 将解决此问题。

@(_offsetY.ToString(System.Globalization.CultureInfo.InvariantCulture))%

您可能希望在代码中添加一个辅助函数来简化此操作,例如

  string Percentage(double value) => value.ToString(System.Globalization.CultureInfo.InvariantCulture)) + "%";

【讨论】:

    猜你喜欢
    • 2014-06-09
    • 2012-02-27
    • 2017-04-22
    • 2019-08-26
    • 2011-05-18
    • 2016-08-30
    • 2015-11-22
    • 2016-06-18
    • 2016-02-18
    相关资源
    最近更新 更多