微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Silverlight ValidatesOnException默认消息本地化

在我的silverlight 4 MVVM应用程序中,我可以在运行时切换语言:

public void SetLanguage(string language)
{
    var culture = new CultureInfo(language);
    Thread.CurrentThread.CurrentUICulture = culture;
    Thread.CurrentThread.CurrentCulture = culture;
    // ...
}

对于输入,我只是在转换问题的情况下添加了“ValidatesOnException = true”并且它完成了工作.但认的异常消息是在我的操作系统文化中,而不是在手动选择的消息中.

exception message localization的这个帖子中,想法是改变CurrentCulture和CurrentUICulture,我做了.所以我有点卡住了.

我能做什么 ?

谢谢 :)

编辑:我试图在convertback方法中使用带有自定义异常的自定义转换器,以验证用户的输入.问题,转换方法中的异常不会被validatesOnException捕获,它会破坏应用程序.

编辑2:澄清 – >如果我有一个绑定到文本框的十进制属性,并在此文本框中输入“blabla”,我想看到有问题,我希望该消息在运行时区域设置而不是操作系统区域设置.
我不能在我的属性设置器中引发异常,因为我从未到达那里,认转换器在此之前引发它自己的异常.

我希望它很清楚.如果我可以帮助你帮助我,请不要犹豫:)

解决方法

也许你不是在一开始就改变文化.

我建议您尝试在此链接的第一个答案中给出的方法

Change culture of Silverlight application

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐