多國語系 建國科技大學 資管系 饒瑞佶.

Slides:



Advertisements
Similar presentations
第一章 餐饮服务程序 学习目的: 掌握餐饮服务四个基本环节的内容 正确表述和运用各种餐饮形式的服务程序 熟悉并利用所学知识灵活机动地为不同需求的 客人提供服务.
Advertisements

Java语言的特点 Java开发环境的搭建
《浙江舟山群岛新区发展规划》 重点内容介绍.
第五章 话语的语用意义(上) 主讲人:周明强.
中国文学批评史 第五编 明 代.
主办:泰兴市质量强市领导小组办公室 承办:泰 兴 市 市 场 监 督 管 理 局.
四資二甲 第三週作業 物件導向程式設計.
2012年新能源客车现状及2013年预测 2012年11月 江苏无锡 2017/3/14.
石家庄迅步网络科技有限公司 联系人:张会耀 电话:
透视钢铁焦点 改变运行机制 行业走出困境 刘勇昌 2013年8月
第10章 面向对象的设计方法 教学目的:了解面向对象设计的概念和方法 教学重点:理解面向对象的设计的基本原理,掌 握面向对象的设计方法。
102學年度預算編製說明會 主辦單位:會計室 102/02/22.
设计模式可以帮助我们改善系统的设计,增强 系统的健壮性、可扩展性,为以后铺平道路。
第13章多项目设计与开发.
Visual Basic 期中報告 組長:沈亞臻 組員:蔣佳育 張庭茹
《公共事物的治理之道》 Governing the Commons
《生活与哲学》第一轮复习 第七课唯物辩证法的联系观.
AOP实践 演讲人:陈思荣.
第9课 北美大陆上的新体制 导入新课 新课教学 课堂小结 知识结构 巩固练习
LINQ 建國科技大學 資管系 饒瑞佶.
第13章 WinForms基础知识.
JAVA vs. SQL Server 建國科技大學 資管系 饒瑞佶 2013/4 V1.
PDFCreator安裝教學.
第9章 Windows窗体应用程序设计 9.1 窗体设计 9.2 常用的控件设计 9.3 多个窗体之间的数据传递 9.4 多文档窗体
K/3 Cloud 技术开发培训 ----BOS 业务插件开发
Controls.
ASP.NET基本設計與操作 建國科技大學 資管系 饒瑞佶 2007年.
Java程序设计 第9章 继承和多态.
Text To Speech (TTS, 文字轉語音) 靜宜大學資管系 楊子青
PR150 (125K) Reader RS232.
C/C++/Java 哪些值不是头等程序对象
VS.NET 2003 IDE.
FileUpload控制項 建國科技大學 資管系 饒瑞佶 2007年.
客製化安裝 建國科技大學 資管系 饒瑞佶.
第7章 繼承/多型/介面 注意: 本投影片僅供本書上課教師使用,非經同意請勿上網轉載或供拷貝.
劉崇汎 崑山科技大學 電腦與通訊系 DLL的建立與引用 劉崇汎 崑山科技大學 電腦與通訊系
PowerPoint 2019/4/9.
第二章 Java基本语法 讲师:复凡.
第五章 介面/集合/泛型 注意: 本投影片僅供本書上課教師使用,非經同意請勿上網轉載或供拷貝.
Working Model 2D 朝陽科技大學 工業設計系 邱相文.
網頁程式概論 建國科技大學資管系 饒瑞佶 2015/9 V1 2016/4 V2 2016/9 V3.
讓Emulator可以 使用Android Market
IIS Internet Information Services
GridView.
Java程式初體驗大綱 大綱 在學程式之前及本書常用名詞解釋 Hello Java!程式 在Dos下編譯、執行程式
智慧型手機程式設計 建國科技大學資管系 饒瑞佶 2011年(992).
DEV342 Visual Basic 2005: 应用程序框架 和高级语言特性
Text To Speech (TTS, 文字轉語音) 靜宜大學資管系 楊子青
HelloPurr_Extend 靜宜大學資管系 楊子青
第二章 Java语法基础.
回顾.
第二章 Java基本语法 讲师:复凡.
電腦軟體設計 建國科技大學 資管系 饒瑞佶 2010年.
控制項定位與自動縮放 建國科技大學 資管系 饒瑞佶.
利用 EditorConfig 自訂文字編輯器設定
Text To Speech (TTS, 文字轉 語音)、讀簡訊 靜宜大學資管系 楊子青
JQuery 標籤操作 建國科技大學 資管系 饒瑞佶 2013/4 V1.
目标 流程控制 字符串处理 C# 的类和对象 C# 访问修饰符 C# 构造函数和析构函数.
程式移植.
從HTML表格到CSS 靜宜大學 資管系 楊子青.
第二章 Java基本语法 讲师:复凡.
進階UI元件:ListView元件以及複選 靜宜大學資管系 楊子青
MDI介面建置 建國科技大學 資管系 饒瑞佶.
專案建置與封裝程式 建國科技大學 資管系 饒瑞佶.
Activity的生命週期: 播放音樂與影片 靜宜大學資管系 楊子青
所得稅法第14條、第126條修正條文 薪資所得計算方式二擇一 定額減除 特定費用減除 維持現行薪資所得特別扣除額20萬元減除方式
JAVA 程式設計與資料結構 第三章 物件的設計.
多姿多彩的世界.
MenuStrip by Szeto CY Visual C# 2008.
NFC (近場通訊, Near Field Communication) 靜宜大學資管系 楊子青
Presentation transcript:

多國語系 建國科技大學 資管系 饒瑞佶

先選定一個語系文字設定好UI 接著將Localizable屬性設定為true

系統將自動產生Form.resx

接著選擇language屬性的其他語系

修改版面上文字 專案會產生語系對應的resx

對應語系的resx內容

在專案屬性中設定一個語系的設定 預設值

專案屬性設定最後寫入App.config中

在每個表單的建構子中加入 這樣表單在啟動時就會自動載入對應的語系 Thread.CurrentThread.CurrentCulture = new CultureInfo(Properties.Settings.Default["LNG"].ToString()); Thread.CurrentThread.CurrentUICulture = new CultureInfo(Properties.Settings.Default["LNG"].ToString()); // 上面兩行需要在InitializeComponent()之前 InitializeComponent(); 這樣表單在啟動時就會自動載入對應的語系

可是如果表單已經開啟要馬上切換語系? // 修改app.config中的LNG設定 Properties.Settings.Default.LNG = "en-US"; Properties.Settings.Default.Save(); //設定語系,從App.config中讀取語系設定 SetLang("en-US ", this, typeof(Main)); // 重新載入表單 FormClosed += (o, a) => new Main().ShowDialog(); Hide(); Close(); 重新設定語系到app.config 重新載入表單 馬上就可以切換語系

SetLang方法 public static void SetLang(string lang, Form form, Type formType) { System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo(lang); if (form != null) System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(formType); resources.ApplyResources(form, "$this"); AppLang(form, resources); }

AppLang方法 private static void AppLang(Control control, System.ComponentModel.ComponentResourceManager resources) { if (control is MenuStrip) resources.ApplyResources(control, control.Name); MenuStrip ms = (MenuStrip)control; if (ms.Items.Count > 0) foreach (ToolStripMenuItem c in ms.Items) //設定語系 AppLang(c, resources); } foreach (Control c in control.Controls) resources.ApplyResources(c, c.Name);

// 下拉選單語系切換 private static void AppLang(ToolStripMenuItem item, System.ComponentModel.ComponentResourceManager resources) { if (item is ToolStripMenuItem) resources.ApplyResources(item, item.Name); ToolStripMenuItem tsmi = (ToolStripMenuItem)item; if (tsmi.DropDownItems.Count > 0) foreach (ToolStripMenuItem c in tsmi.DropDownItems) //if (tsmi != ToolStripSeparator) //{ } AppLang(c, resources); }