2011-02-01 24 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