2011-02-01 2 views
1

J'aime beaucoup le modèle de localisation dans asp.mvc. Vous avez le mécanisme resx-fallback et avec certaines méthodes html-helper vous pouvez facilement référencer vos ressources dans vos vues.Utilisation de ressources dans xaml en fonction de la localisation

-à-dire: <%: Html.Resource("ApplicationTitle") %>

Je veux savoir s'il y a quelque chose de similaire à WPF. Si vous pouvez utiliser quelque chose comme ceci sur XAML:

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

également comment dire votre application quel fichier ressource à utiliser (par défaut, en, en-us).

Edit:

J'ai trouvé comment référencer les propriétés des ressources directement sur XAML. Vous pouvez avoir un fichier Language.resx sur votre solution et référence sur App.xaml:

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

Ensuite, il suffit d'utiliser quelque chose comme ceci sur XAML:

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

Le seul problème est de savoir comment décider quelle ressource à utiliser: Language.resx ou Language.en.resx

Répondre

0

Vous pouvez facilement faire quelque chose comme écrire une coutume:

  • propriété attachée,
  • comportement
  • ou
  • extension de balisage
+0

Désolé pour le manque d'expérience de ma part, mais je ne peux pas comprendre comment y parvenir en utilisant des propriétés jointes ou des comportements. En ce qui concerne les extensions de ressources, je ne peux pas comprendre ce que c'est. – dcarneiro

+0

Désolé, je voulais écrire des extensions de balisage **: http://msdn.microsoft.com/en-us/library/ms747254.aspx – bitbonk

+0

J'ai lu l'article mais honnêtement, je ne vois pas comment utiliser les extensions de balisage . L'article m'a cependant donné une idée. Je peux utiliser un convertisseur pour décider du mécanisme de resx-fallback. – dcarneiro

Questions connexes