问题描述
大家好:急于求助大家,请各位帮忙,先多谢了!我用c#做了一套c/s架构的系统,要求使用三个不同的版本,中文检体版,中文繁体版,英文版。我的做法是在每个应用窗体上都有个属性Language,默认我定为中文简体,又分别选择了‘中文(繁体)’,‘英语(美国)’,分别把窗体上的控件名称改成对应的语言。这样每个窗体都会有'xxxx.cs','xxxx.designer.cs','en-us.resx,xxxx'.'zh-cht.resx','xxxx.resx'这些文件,有个类文件,类文件里是这样定义的classClassMoreLanguage{privatestaticstringLanguageSign;publicstaticstringLanguageSign1{get{returnLanguageSign;}set{LanguageSign=value;}}publicstaticvoidcreateLanguage(stringst){Thread.CurrentThread.CurrentUICulture=newCultureInfo(st);}publicstaticResourceManagerLanguage=newResourceManager("com.cezanne.golden.client.WinFormStrings",Assembly.GetExecutingAssembly());}我在登陆窗体上有三个选项,分别是简体,繁体,英文选择,要是用户选择的是英文,在加载窗体之前的构造函数里stringm_SLanguage;publicDummyTranTradeAuto(){m_SLanguage=ClassMoreLanguage.LanguageSign1;ClassMoreLanguage.createLanguage(m_SLanguage);InitializeComponent();}我在工程里调试的时候,中英文不同语言切换是没问题的,但是我打成安装包后,安装到机器上,登陆时选择了英文版,界面启动后还是显示的中文名称。请大家帮忙解决下,或谁有更好的方法请指教下,急多谢多谢!!!
解决方案
解决方案二:
调试时可以的话,估计是安装包的问题吧。我也做过多语言的尝试,具体的步骤可以看我的bloghttp://lextm.blogspot.com/2007/08/once-youve-localized-winforms.html