资源,本地化

读写Settings

对于Properties,Settings里面的字符串,

读取

Settings.Default.IpAddress;

 Settings.Default.IpAddress = host;

Settings.Default.Save();

 

读取资源中的字符串

新建一个Demo.resx文件

里面建立字符串

方式一:直接Demo.Title

方式二:

            var rm = new ResourceManager("Wrox.ProCSharp.Localization.Demo", Assembly.GetExecutingAssembly());
            Console.WriteLine(rm.GetString("Title"));

方式二可以读取图片资源

            using (Image logo = (Image)rm.GetObject("WroxLogo"))
            {
                logo.Save("logo.bmp");
            }

国际化

窗口显示国际化

对于一个Form,将Localizable设置为True,Language为默认时,可以放置控件。

需要添加某一个语言,在Language下拉选择(或者直接填写)即可。

比如设置中文后,

在Form的各个控件上输入中文,同时项目中自动生成文件

 可执行目录下同时生成zh的文件夹,里面有对应dll资源文件。

 代码中设置

string culture=可以是en,zh,fr,de后面的国家也可加上,比如en-us,zh-cn

下面一般在主Form构造函数中设置

                CultureInfo ci = new CultureInfo(culture);
                Thread.CurrentThread.CurrentCulture = ci;
                Thread.CurrentThread.CurrentUICulture = ci;

一般字符串国际化

在Properties下面新建资源文件,

命名方式如下

原来有一个Resources.resx文件,中文的叫Resources.zh.resx,英文的叫Resources.en.resx

其中的字符串资源名称相同,对应的值为翻译后的结果。

在代码中获取很简单。

Properties.Resources.MsgInfo
原文地址:https://www.cnblogs.com/noigel/p/14367664.html