【问题标题】:How to set Unicode character as Text of TextBlock in the code-behind?如何在代码隐藏中将 Unicode 字符设置为 TextBlock 的文本?
【发布时间】:2020-02-08 02:20:46
【问题描述】:

我决定在三角形箭头字符内使用向上白色箭头,如下所述:http://www.fileformat.info/info/unicode/char/1f895/index.htm

以下 vb.net 代码是好的。

TextBlock1.Text = Convert.ToChar(&H25B2)

但是按照 vb.net 的代码是不行的。

TextBlock1.Text = Convert.ToChar(🢕)

有什么办法吗?

【问题讨论】:

  • .NET 中的 所有 字符串都是 Unicode。您现在看到的页面是 Unicode - SO 是一个 ASP.NET 站点。您输入的只是无效的语法。您可以简单地复制您想要的字符并将它们粘贴到一个字符串中,例如 ????
  • 顺便说一句,您链接到的页面也包含转义码

标签: c# wpf vb.net winforms unicode


【解决方案1】:

对我来说 \U0001F895 有效:

Console.WriteLine("\U0001F895");

Try it online

【讨论】:

    【解决方案2】:

    .NET 中的字符串是 Unicode。您可以在字符串中键入该字符(或者更确切地说,将其粘贴):

    var x1="?";
    

    但要显示它,您的应用程序或控制台需要具有正确字形的字体。您还必须确保将源文件保存为 UTF8。

    您链接到的页面包含您需要在 C/C++/Java 和 C# 中使用以创建相同字符的转义序列:

    var x2="\uD83E\uDC95";
    Debug.Assert(x2==x1);
    

    【讨论】:

      猜你喜欢
      • 2011-04-23
      • 2017-10-04
      • 1970-01-01
      • 2012-06-05
      • 2012-08-07
      • 1970-01-01
      • 1970-01-01
      • 2012-11-27
      • 2011-12-20
      相关资源
      最近更新 更多