【问题标题】:C# Button Text Unicode charactersC# 按钮文本 Unicode 字符
【发布时间】:2011-01-31 05:01:27
【问题描述】:

C# 不想将 Unicode 字符放在按钮上。如果我将 \u2129 放在按钮的 Text 属性中,按钮会显示 \u2129,而不是 Unicode 字符(例如 - 我选择 2129,因为我可以在机器上当前活动的字体中看到它)。

我之前看到过这个问题,link text,但这个问题并没有得到真正的回答,只是得到了解决。我正在开发遍布世界各地的应用程序,并且不想安装所有字体,而不是“不想”,有很多我怀疑我正在使用的机器是否有足够的磁盘空间.我们的海外销售代理提供 Unicode 字符“数字”。还有其他的方法吗?

顺便说一句,(好奇),为什么它不起作用?

【问题讨论】:

  • 这个问题看起来会在那个帖子上得到回答。

标签: c# winforms unicode button


【解决方案1】:

问题是:

  • C#让你把Unicode放进去,像button1.Text = "Hello \u2129";,没问题
  • 但 Visual Studio 窗体设计器不会将 '\u2129' 识别为任何特殊内容。按设计。

所以只需在属性窗口中粘贴“℩”或使用代码。

【讨论】:

  • @Frederik:Unicode 转义序列 '\u????'可以在字符或字符串中使用,因此将字符连接到字符串并不重要:它可以很容易地写成 button1.Text = "Hello\u2129"。
  • @Paul(和@Henk):是的,没想到那么远。我将删除我的评论以避免混淆
  • 实际上,Visual Studio Forms 设计器正在转义 \ 字符并将其解析为常规 \(在 C# 代码中为“\\”)。设计器正确支持 Unicode,因此您可以安全地复制粘贴字符串。
【解决方案2】:

将按钮的“字体”更改为支持“u2129”的“字体”(来自google:Arial Unicode MS)。可能对你有帮助

【讨论】:

    【解决方案3】:

    您是否尝试过手动输入字符?另外,您是否尝试过使用带有 @"blahblahblah" 的文字字符串?

    【讨论】:

      【解决方案4】:

      我试图在表单标题中包含版权符号 (\u00a9)。使用转义字符或更改字体对我不起作用。我只是从文本编辑器复制粘贴符号。

      【讨论】:

        【解决方案5】:

        尝试在您的代码中使用它:

        button.Text = ""+(char)0x2129;
        

        【讨论】:

          猜你喜欢
          • 2014-11-21
          • 1970-01-01
          • 1970-01-01
          • 2013-12-03
          • 2020-01-12
          • 2018-06-22
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多