【问题标题】:MessageBoxButtons' language different than language of currentcultureMessageBoxButtons 的语言与当前文化的语言不同
【发布时间】:2011-03-11 21:09:57
【问题描述】:

嗨 我对 MessageBoxButtons 有奇怪的问题。

我以标准方式显示 MessageBox

MessageBox.Show("Info","Info",MessageBoxButtons.YesNo,MessageBoxIcons.Warning);

问题是 YesNo 按钮是英文的,尽管 currentCulture 设置为其他语言 (pl-Pl)。控件的 Localizable 属性设置为 true 并选择默认语言。然而,正如我之前提到的,messageBoxButtons 的语言与 currentCulture 的语言不同。 有没有办法解决这个问题??

【问题讨论】:

  • 操作系统语言是什么?
  • 波兰语 - 在这种语言中,我希望显示按钮
  • 我认为它依赖于操作系统。stackoverflow.com/questions/930754/…
  • 显然这并不完全正确:(

标签: c# winforms multilingual messagebox


【解决方案1】:

这是设计使然,内置的 Windows 对话框(如 MessageBox)总是以系统默认语言显示文本。任何有兴趣以不同于 Windows 版语言的语言运行她的机器的用户都将购买 Ultimate 版的许可证。它支持可下载的语言包,可以更改所有 Windows 程序和对话框的语言文本。

否则这并不常见,绝大多数用户只是购买与其母语相匹配的 Windows 版本。您唯一需要做的就是确保您的程序针对该语言进行了本地化。即使是 Ultimate 也不需要在程序中支持按需切换,用户只需使用控制面板的区域和语言小程序即可进行切换。这会强制重新登录,从而确保您的程序重新启动。

【讨论】:

    【解决方案2】:
    【解决方案3】:

    对此问题的另一个脚注:考虑以下情况,如果 Windows 设置为本地语言,但您的程序不支持该语言怎么办?现在用户必须以一种精神分裂的方式接受消息框和其他系统级对话框,部分是英语,部分是母语。如果用户希望程序只有英文怎么办?在现有的 CurrentThread.CurrentUICulture 属性方法下,无法产生所需的效果。

    在那篇文章上把我的头撞在墙上一段时间,也许如果你读到这篇文章,它就不会发生在你身上......

    基思

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-08-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-20
      相关资源
      最近更新 更多