【发布时间】:2009-06-14 14:21:58
【问题描述】:
我正在使用标记扩展在 WPF 应用程序中加载国际化字符串,如下所示:
<Button Content="{Translate MyText}"/>
我的标记扩展名为“TranslateExtension”,它从数据库中搜索键“MyText”的值。它在
ProvideValue(IServiceProvider serviceProvider)
返回正确字符串的方法。一切正常。
我的问题是,ProvideValue-Method 不再被调用,并且当语言改变时,没有办法从数据库中提取一个新的字符串。我现在需要一种方法来使返回值“动态”,使按钮重新加载它的 xaml 并重新使用标记扩展,无论它是通过更改语言时抛出的事件还是其他什么。如何让系统再次调用 ProvideValue-Method?我尝试过 InvalidateVisual() InvalidateArrange() InvalidateMeasure() UpdateLayout()...
我希望我说清楚了。请随时询问您认为您能够提供想法或解决方案的更多信息。 谢谢
【问题讨论】:
标签: wpf xaml markup dynamicresource