C# 多国语言切换(三)

备注 :代码为借鉴,目的为方便自己做项目

  1. 首先需要在主窗口界面中设置
    1.Localizable( 可本地化 ) : 设置为TRUE
    2.Language(语言): 选择自己需要的语言
  2. 设置控件文本Text 本地化的名称
    例如需要 中文和英文,那么就先将所有控件都改为中文, 之后再切换 1.2 为 英文 再次改写控件名称
  3. 工程会生成两个".resx"文件 “en”(英文)和“zh”(中文)
    也可在下图方式添加
    在这里插入图片描述
  4. 示例图
    在这里插入图片描述
  5. 添加代码
    1. 按钮点击事件

        private void btn_Chinese_Click(object sender, EventArgs e)
        {
            //更改当前线程的 CultureInfo
            //zh-CN 为中文,更多的关于 Culture 的字符串请查 MSDN
            Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("zh-CN");
            //对当前窗体应用更改后的资源
            ApplyResource();
        }

        private void btn_English_Click(object sender, EventArgs e)
        {
            //更改当前线程的 CultureInfo
            //en 为英文,更多的关于 Culture 的字符串请查 MSDN
            Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("en");
            //对当前窗体应用更改后的资源
            ApplyResource();
        }
  2.   封装后的代码
  /**//// <summary>
            /// 应用资源
            /// ApplyResources 的第一个参数为要设置的控件
            ///                  第二个参数为在资源文件中的ID,默认为控件的名称
            /// </summary>
        private void ApplyResource()
        {
            System.ComponentModel.ComponentResourceManager res = new ComponentResourceManager(typeof(LoginFrm));
            foreach (Control ctl in Controls)
            {
                res.ApplyResources(ctl, ctl.Name);
            }
            this.ResumeLayout(false);
            this.PerformLayout();
            res.ApplyResources(this, "$this");
        }
  1. 产品呈现
    在这里插入图片描述
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值