用c#创建支持多语言的应用程序
来源:互联网 发布:终极算法电子书 编辑:程序博客网 时间:2024/06/15 17:16
互联网无国界,越来越多的应用程序必须面对全球用户了,如何设计一个支持多国语言的应用程序呢?
在.net2.0 中,m$ 为我们提供了一种简单方便的方法, 使用资源文件
1.新建一个 Winform 应用程序, 新建一 Form ,名为 Form1,添加两个按钮 btnChinese, btnEnglish
2. 设置 Form1 的 Localizable 属性为 true, 设置该属性后,.net 将根据不同的语言,为应用程序生成不同的资源文件
3.设置各个控件的文本(系统默认语言下)
4.更改 Form1 的 Language 属性为想要支持的另一种语言,此例中我们选用 English
5.重新设置各个控件的文本
注:此时.net 将为 Form1 生成另一个资源文件,在本例中名为 Form1.en.resx
6. 如果有其它的语言要设置,请重复第4,第5步
7.编写代码
大致的代码就完成了,此时点击 “中文”按钮,画面切换为中文,点击“英文”按钮,画面立即切换为英文
在.net2.0 中,m$ 为我们提供了一种简单方便的方法, 使用资源文件
1.新建一个 Winform 应用程序, 新建一 Form ,名为 Form1,添加两个按钮 btnChinese, btnEnglish
2. 设置 Form1 的 Localizable 属性为 true, 设置该属性后,.net 将根据不同的语言,为应用程序生成不同的资源文件
3.设置各个控件的文本(系统默认语言下)
4.更改 Form1 的 Language 属性为想要支持的另一种语言,此例中我们选用 English
5.重新设置各个控件的文本
注:此时.net 将为 Form1 生成另一个资源文件,在本例中名为 Form1.en.resx
6. 如果有其它的语言要设置,请重复第4,第5步
7.编写代码
private void btnChinese_Click(object sender, EventArgs e)
{
//更改当前线程的 CultureInfo
//zh-CN 为中文,更多的关于 Culture 的字符串请查 MSDN
Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("zh-CN");
//对当前窗体应用更改后的资源
ApplyResource();
}
private void btnEnglish_Click(object sender, EventArgs e)
{
//更改当前线程的 CultureInfo
//en 为英文,更多的关于 Culture 的字符串请查 MSDN
Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("en");
//对当前窗体应用更改后的资源
ApplyResource();
}
/**//// <summary>
/// 应用资源
/// ApplyResources 的第一个参数为要设置的控件
/// 第二个参数为在资源文件中的ID,默认为控件的名称
/// </summary>
private void ApplyResource()
{
System.ComponentModel.ComponentResourceManager res = new ComponentResourceManager(typeof(Form1));
foreach (Control ctl in Controls)
{
res.ApplyResources(ctl, ctl.Name);
}
}
{
//更改当前线程的 CultureInfo
//zh-CN 为中文,更多的关于 Culture 的字符串请查 MSDN
Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("zh-CN");
//对当前窗体应用更改后的资源
ApplyResource();
}
private void btnEnglish_Click(object sender, EventArgs e)
{
//更改当前线程的 CultureInfo
//en 为英文,更多的关于 Culture 的字符串请查 MSDN
Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("en");
//对当前窗体应用更改后的资源
ApplyResource();
}
/**//// <summary>
/// 应用资源
/// ApplyResources 的第一个参数为要设置的控件
/// 第二个参数为在资源文件中的ID,默认为控件的名称
/// </summary>
private void ApplyResource()
{
System.ComponentModel.ComponentResourceManager res = new ComponentResourceManager(typeof(Form1));
foreach (Control ctl in Controls)
{
res.ApplyResources(ctl, ctl.Name);
}
}
大致的代码就完成了,此时点击 “中文”按钮,画面切换为中文,点击“英文”按钮,画面立即切换为英文
- 用c#创建支持多语言的应用程序
- 用c#创建支持多语言的应用程序
- 用c#创建支持多语言的应用程序
- 用c#创建支持多语言的应用程序
- 用c#创建支持多语言的应用程序
- 用c#创建支持多语言的应用程序
- 用c#创建支持多语言的WinForm应用程序
- 用c#创建支持多语言的WinForm应用程序
- 用c#创建支持多语言的WinForm应用程序
- 用c#创建支持多语言的应用程序
- 用c#创建支持多语言的应用程序
- 用c#创建支持多语言的WinForm应用程序
- 用c# 创建支持多语言的应用程序 资源文件 resx
- BCGControlBar支持多语言资源创建应用程序向导的制作
- 详解iPhone应用程序 多语言支持操作
- 详解iPhone应用程序 多语言支持操作
- IOS 多语言支持,应用程序国际化
- 让WPF应用程序支持多语言
- 深入浅出Liferay Portal (9)
- C# Excel导入导出以及其他相关操作
- ASP.NET中常用功能代码总结——发送邮件篇
- VB停止进程
- asp.net多线程
- 用c#创建支持多语言的应用程序
- 最少硬币问题--贪心算法
- 弹出确定框,进入新页面
- Ajax从入门到精通
- 令人毛骨悚然的大学校外租房经历
- 随笔
- Programfan
- DotNet2005Web画面由Enter键造成Submit的防止
- 关于如何删除掉select中的option元素,兼容IE、Firefox