2011-02-01 68 views
1

我非常喜欢asp.mvc中的本地化模型。你有resx-fallback机制和一些html-helper方法,你可以很容易地在你的视图中引用你的资源。根据本地化使用xaml中的资源

即:<%: Html.Resource("ApplicationTitle") %>

我想知道是否有WPF中类似的东西。 如果你可以使用XAML是这样的:

<TextBlock Text="{Binding Source=Resources.ApplicationTitle}" /> 

还怎么告诉你的应用程序使用的资源文件(默认情况下,EN,EN-US)。

编辑:

我发现如何直接在XAML引用的资源属性。你可以有你的解决方案Language.resx文件,并引用它的App.xaml:

<SolutionName:Language x:Key="LocalizedStrings" /> 

然后,只需使用像这样的XAML:

<TextBlock Text="{Binding Path=ApplicationTitle, Source={StaticResource LocalizedStrings}}" /> 

现在唯一的问题是如何决定要使用的资源:Language.resx或Language.en.resx

回答

0

你可以很容易地做这样的事情编写自定义:

  • 附加属性,
  • 行为或
  • 标记扩展
+0

对不起,缺乏对我的一部分经验,但我无法弄清楚如何做到这一点使用附加属性或行为。至于资源扩展,我无法弄清楚它是什么。 – dcarneiro 2011-02-01 16:58:15