【问题标题】:Adding Currency code to textblock programmatically以编程方式将货币代码添加到文本块
【发布时间】:2014-12-30 08:24:24
【问题描述】:

我正在开发 Windows Phone 8 应用程序,需要以编程方式将货币十六进制代码添加到文本块文本属性。它在 xaml 上完美运行:

<TextBlock  Text="&#x20a6;" />

但是当我使用下面的语句时:

textblock.text = "&#x20a6;"; 

它只是按原样显示文本。如何以编程方式执行此操作?

【问题讨论】:

  • 你试过这个吗:textblock.text = "\x20a6";
  • @Simon 尝试过但不工作,按原样显示字符串
  • 或者这个textblock.text = "\u20a6";
  • @Simon "\u20a6 效果很好。谢谢

标签: c# xaml windows-phone-8


【解决方案1】:

您需要字符串中的 Unicode 值。 Using Unicode character escape sequences in strings.

  textblock2.Text = "\u20a6";

或者您可以使用十六进制数字并转换为字符。

  textblock2.Text = char.ConvertFromUtf32(0x20a6);

另外,您可以简单地使用字符:

textblock2.Text = "₦";

【讨论】:

  • 谢谢,就像第一个和第二个例子一样,效果很好
【解决方案2】:

试试这个:

            var formatter = new System.Globalization.CultureInfo("HA-LATN-NG");
            formatter.NumberFormat.CurrencySymbol = "₦";


            textblock.text  = long.Parse("20a6", NumberStyles.AllowHexSpecifier 
            | NumberStyles.HexNumber,
            formatter).ToString("c");

但是,如果您需要十进制值,see this link.

【讨论】:

  • 这将检索用户的当前地区或货币格式。我只需要使用我拥有的一组提供的货币代码。货币代码 20a6 代表尼日利亚奈拉
猜你喜欢
  • 2017-06-07
  • 1970-01-01
  • 1970-01-01
  • 2012-02-26
  • 2018-07-05
  • 2018-12-04
  • 2015-11-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多