【发布时间】:2012-07-20 09:12:53
【问题描述】:
我目前正在编写一些代码来处理我的 Silverlight 4 应用程序中的键盘快捷键。我想创建一个管理窗口,如果用户不想使用默认键盘快捷键,他们可以在其中定义自定义键盘快捷键。但是,某些键在某些语言中具有不同的翻译(例如 Home、Del、...)。我当然想翻译这些文本,以便每个用户都能正确理解键盘快捷键。
有类似这样的内置翻译吗?我正在考虑类似于 DateTime 的行为方式。如果我使用 DateTimes,则几天或几个月的文本是通过系统文化设置自动定义的。
string dateTimeTest = DateTime.Now.ToLongDateString();
在德语系统上,这会导致文本“Freitag, 20. Juli 2012”。
是否也有类似的可用于键的类似功能?还是我必须手动翻译所有需要的键?
提前致谢!
【问题讨论】:
-
所以您正在寻找类似GetKeyNameText 的东西,但是对于 Silverlight,对吗?我认为它不存在,但我很高兴看到一个答案表明我错了。
-
是的,总结得差不多了。看起来和我正在寻找的完全一样。但正如你所说,我在 Silverlight 中需要它。但是感谢那个链接,我想现在我知道的更多,我可以在几个谷歌搜索中使用:-)
-
似乎没有
ToString重载需要一种文化——拥有一个表明您可以获得本地化输出。在这种情况下,我认为你不能。 -
感谢 ChrisF 的输入,我认为你是对的。我决定手动翻译我需要的值。至少不是 Key 枚举的每个值都必须翻译,因为其中只有一些实际上对于其他语言具有不同的名称。
标签: c# silverlight silverlight-4.0 translation