在运行时使用可编辑消息进行本地化

时间:2012-03-05 07:33:44

标签: c# wpf mvvm localization

由于多种原因,需要本地化我的应用程序,使最终客户有可能修改显示的消息(标签,按钮内容,弹出消息)。 这必须通过简单地编辑包含应用程序消息的XAML(资源字典)文件来完成:它可能吗? 我的意思是,可以编译保存在.exe包之外的应用程序合并的词典吗?

谢谢,

1 个答案:

答案 0 :(得分:0)

是的,你可以,这是我用于我的应用程序的解决方案。只需将.xaml资源字典文件的属性设置为Content / Copy Always。然后在您的代码中,您可以使用以下命令加载资源:

MyXmlReader = System.Xml.XmlReader.Create(MyResourceFileName)
MyResourceDictionary = System.Windows.Markup.XamlReader.Load(MyXmlReader)

但请注意,根据客户的技术知识,很容易破坏标签。所以你应该尝试/捕获上面的代码,并提供错误信息(带行号) 也许提供一个允许更安全地编辑字典的小工具(只需一个ListView Full of TextBlock / TextBox:=)就不会太难了。)