由于时间紧促,来不及去看.Net的全球化实现方法,所以自己写了个资源文件的实现方法,来实现工程的多语言版需求。原理很简单,将一个窗体会用到的所有字符串,包括各种控件的显示文本,用序列化方法保存到文件中。定义一个继承类BaseForm,在窗体加载中读出资源文件,实现语言化。
  以下让我们来具体实现。

  一、ResCollection类
  此类实现了资源文件的结构定义。

  1使用自定义类实现工程多语言using System;
  2使用自定义类实现工程多语言using System.Collections;
  3使用自定义类实现工程多语言
  4使用自定义类实现工程多语言namespace FaibClass.Language
  5}

  二、ResManager类
  此类实现了资源文件结构的序列化保存与读取,并语言化WinForm控件。
  1使用自定义类实现工程多语言using System;
  2使用自定义类实现工程多语言using System.Collections;
  3使用自定义类实现工程多语言using System.Runtime.Serialization;
  4使用自定义类实现工程多语言using System.Runtime.Serialization.Formatters;
  5使用自定义类实现工程多语言using System.Runtime.Serialization.Formatters.Binary;
  6使用自定义类实现工程多语言using System.Windows.Forms;
  7使用自定义类实现工程多语言using System.IO;
  8使用自定义类实现工程多语言
  9使用自定义类实现工程多语言namespace FaibClass.Language
 10

  Menu、Toolbar、StatusBar、ListView、TabPage是以Text来命名资源名的,其余控件使用控件的Name来命名。

  三、继承类BaseForm
 1使用自定义类实现工程多语言using System;
 2使用自定义类实现工程多语言using System.Windows.Forms;
 3使用自定义类实现工程多语言using System.ComponentModel;
 4使用自定义类实现工程多语言using FaibClass.Language;
 5使用自定义类实现工程多语言
 6使用自定义类实现工程多语言namespace FaibSoft.CheaterMember
 7

  使用本窗体资源直接使用ValueList["资源名"],使用公共资源使用BaseValueList["资源名"]

  相关下载资源编辑器 、示例

相关文章:

  • 2022-12-23
  • 2021-08-04
  • 2021-08-24
  • 2021-08-28
  • 2022-12-23
  • 2021-10-27
  • 2021-09-05
  • 2023-03-14
猜你喜欢
  • 2021-07-14
  • 2022-12-23
  • 2022-12-23
  • 2022-03-02
  • 2022-12-23
  • 2021-07-17
  • 2022-01-17
相关资源
相似解决方案