在 C# 中实现中英切换可以通过以下几个步骤来完成:

  1. 创建一个资源文件(.resx文件),用于存储不同语言的文本。可以通过右键项目 -> 添加 -> 新建项 -> 资源文件来创建。
  2. 在资源文件中添加对应的键值对,如键为'Hello',值为'你好'。
  3. 在需要切换语言的界面上,创建一个下拉列表或其他方式来选择语言。
  4. 在语言选择事件中,根据用户选择的语言,使用System.Threading.Thread.CurrentThread.CurrentUICulture来设置当前线程的区域性(Culture)。
  5. 在界面上的文本控件中,通过ResourceManager类和资源文件来获取对应语言的文本。

以下是一个简单的示例代码:

using System;
using System.Globalization;
using System.Resources;
using System.Threading;
using System.Windows.Forms;

namespace LanguageSwitching
{
    public partial class MainForm : Form
    {
        private ResourceManager resourceManager;

        public MainForm()
        {
            InitializeComponent();

            // 创建资源管理器
            resourceManager = new ResourceManager("LanguageSwitching.Resource", typeof(MainForm).Assembly);
        }

        private void languageComboBox_SelectedIndexChanged(object sender, EventArgs e)
        {
            // 获取用户选择的语言
            string selectedLanguage = languageComboBox.SelectedItem.ToString();

            // 设置当前线程的区域性
            Thread.CurrentThread.CurrentUICulture = new CultureInfo(selectedLanguage);

            // 更新界面上的文本
            UpdateText();
        }

        private void UpdateText()
        {
            // 通过资源管理器获取对应语言的文本
            string helloText = resourceManager.GetString("Hello");

            // 更新界面上的文本控件
            helloLabel.Text = helloText;
        }
    }
}

在上述示例中,资源文件的键为'Hello',对应的中文值为'你好',英文值为'Hello'。界面上有一个下拉列表控件(ComboBox),用户可以选择中文或英文语言。根据用户选择的语言,通过资源管理器获取对应的文本,并更新界面上的文本控件。

C# 中英切换实现指南:使用资源文件和区域性

原文地址: https://www.cveoy.top/t/topic/9te 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录