1

我必须在 C# 3.5 中制作多语言桌面应用程序。我知道如何在设计时为标签添加多语言文本。

但是我找不到如何使 Messagebox 和 Confirm 对话框多语言?我是否必须在代码中添加 if/else 条件来检查所选语言?

感谢期待!

4

3 回答 3

2

您需要将标题和消息字符串移动到资源中,然后通过Properties.Resources程序集的类上自动生成的属性访问它们。

可以通过查看项目属性并单击“资源”选项卡来创建项目的主资源文件。如果您的项目还没有 Resources.resx,该选项卡上将有一个链接来创建一个。创建完成后,您可以添加项目范围的资源,例如图像和字符串。

于 2010-02-23T15:06:38.667 回答
1

您应该使用资源。(可以在项目 -> 属性... -> 资源选项卡中找到)

如果您使用资源选项卡,那么 VisualStudio 将Resources.resx在文件夹中为您创建文件Properties,您可以在其中存储不同类型的资源。(例如图像、音频和字符串)您可以在其中添加任何可本地化的字符串并在以后使用它们,例如Properties.Resources.MyMessageBoxTitle.

稍后当您想要添加对另一种语言的支持时,您可以复制该Resources.resx文件并将其重命名为Resources.it-it.resx(或Resources.fr.resx)之类的名称。资源管理器然后会自动从相应的资源文件中加载字符串。(基于Thread.CurrentUICulture

于 2010-02-23T15:07:16.840 回答
1

在设计器中,在父窗体或控件上,有一个名为 的属性Localizable,将其设置为 true,然后,您可以更改它的Language属性并更改标签/移动控件,以便布局适合该本地化。

这样做将相应地创建资源文件。

于 2010-02-23T15:09:37.717 回答