Articles of 全球化

如何添加新的Windows日历types?

世界上有很多types的日历。 以下链接是这些日历的列表: http://en.wikipedia.org/wiki/List_of_calendars Microsoft剂量在Windows中提供所有types的日历。 我应该使用哪个API来添加新的Windows日历types? (可能是司机的东西。)

如何将我的Oracle会话的全球化设置为与.NET中的Windows相同?

例如,如果我能做到以下几点,那将是非常好的: private void SetSessionGlobalization(Oracle.DataAccess.Client.OracleConnection aConnection) { System.Globalization.CultureInfo lCultureInfo = System.Threading.Thread.CurrentThread.CurrentCulture; aConnection.SetSessionInfo(lCultureInfo); } 但是这不起作用,因为SetSessionInfo将OracleGlobalization类作为参数,而不是CultureInfo! 这也不起作用: private void SetSessionGlobalization(Oracle.DataAccess.Client.OracleConnection aConnection) { Oracle.DataAccess.Client.OracleGlobalization lClientGlobalization = Oracle.DataAccess.Client.OracleGlobalization.GetClientInfo()); aConnection.SetSessionInfo(lClientGlobalization); } 由于GetClientInfo获取Oracle版本的客户端全球化设置,而不是Windows。 我在这里错过了什么? 我如何设置我的数据库连接会话是相同的,我的线程使用(这将是默认的Windows相同)?

将数字转换为使用希伯来字母的string

这可能是一个容易的(它甚至可能是一个骗局),但我无法find答案 – 如何使用希伯来字母打印数字? 我试图更改应用程序语言和/或使用格式提供程序: myTextBox.Text = 555.ToString(new System.Globalization.CultureInfo("he-IL")); 但我不能得到希伯来文。

Windows服务DbResource提供程序

我正在开发一个C#3.5的Windows服务,并希望在SQL Server中存储特定于语言的资源string,并通过DbResourceProvider访问它们。 然而,我所看到的所有例子都没有显示如何在Windows服务中设置资源提供者(他们都显示了在web.config文件中指定提供者)。 我如何在我的Windows服务中设置资源提供者?

语言栏在c#.NET中改变语言

TL; DR :尝试解决InputLanguage更改input布局但不更新语言栏显示的问题。 我正在为Trados Studio编写一个自定义插件。 其中的一部分是与应用程序本身和Word中的语言进行交互,就像这个问题一样: Windows .NET框架的所有可用语言列表 我似乎无法解决的最后一个问题是,在我使用InputLanguage设置键盘inputen-US的代码的一部分。 要说明的是, API是有限的,所以我必须在某些方面实现自动化。 最好的方法是在应用程序中使用默认的快捷方式: 首先,我将input语言改为en-US。 然后我发送一些密钥给应用程序。 然后我将input语言改回原来的样子。 然后我显示一个表单。 这里是代码: //change input language to English InputLanguage currentLang = InputLanguage.CurrentInputLanguage; InputLanguage newLang = InputLanguage.FromCulture(System.Globalization.CultureInfo.GetCultureInfo("en-US")); if (newLang == null) { MessageBox.Show("The Upload Project function requires the En-US keyboard installed.", "Missing keyboard", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } else { InputLanguage.CurrentInputLanguage = newLang; […]

本地化的指数表示法?

我试图将数字转换成本地化的string。 对于整数和金钱的价值很简单,因为string只是一系列的数字和数字分组分隔符。 例如: 12 345 678 901 (保加利亚语) 12.345.678.901 (加泰罗尼亚语) 12,345,678,901 (英语) 12,34,56,78,901 (印地语) 12.345.678.901 (弗里斯兰语) 12?345?678?901 (普什图语) 12'345'678'901 (德语) 我使用Windows GetNumberFormat函数格式整数(和GetCurrencyFormat格式货币值)。 但有些数字不能用固定的符号来合理地表示,需要科学记数法 : 6.0221417930×10 23 或更具体地E符号 : 6.0221417930E23 我怎样才能得到科学记数法的本地化版本? 我想我可以使用本地化的数字构造它: 6.0221417930E23 6,0221417930E23 6.0221417930e23 6·0221417930E23 6·0221417930e23 6,0221417930e23 6,,0221417930e23 6.0221417930E+23 6,0221417930E+23 6.0221417930e+23 6,0221417930e+23 6·0221417930E+23 6·0221417930e+23 6,,0221417930e+23 6.0221417930E23 6,0221417930E23 6.0221417930e23 6,0221417930e23 6·0221417930E23 6·0221417930e23 6,,0221417930e23 6.0221417930X10^23 6,0221417930X10^23 6.0221417930×10^23 […]

切换语言(cultureinfo / globalization)不会影响ToolStripMenuItems

我有一个Windows窗体应用程序项目,并在主窗体上我有一个菜单条。 在这个菜单条中的一些地方可以select各种语言。 例如,如果用户select“英文”,则将该主表格(以及其他未来的表格)上的所有内容都转换成英文。 我接受了这个教程: 点击 这对标签等工作正常,但它不工作的工具条菜单项。 他们只是保持默认的文本。 我试图给ChangeLanguage方法添加两行: private void ChangeLanguage(string lang) { foreach (Control c in this.Controls) { ComponentResourceManager resources = new ComponentResourceManager(typeof(Form1)); resources.ApplyResources(c, c.Name, new CultureInfo(lang)); ComponentResourceManager res2 = new ComponentResourceManager(typeof(ToolStripMenuItem)); res2.ApplyResources(c, c.Name, new CultureInfo(lang)); } } 但它失败了,并说: 找不到适合特定文化或中性文化的资源。 确保在编译时“System.Windows.Forms.ToolStripMenuItem.resources”已正确embedded或链接到程序集“System.Windows.Forms”中,或者所有需要的附属程序集均可加载并完全签名。 不知道如何继续 – 任何帮助表示赞赏。