2010-09-17 4 views

Répondre

2

Vous devez définir la propriété FrameworkElement.Language. La meilleure façon de le faire pour l'ensemble de l'application est de remplacer les métadonnées de la propriété dans le constructeur statique de classe App:

public partial class App : Application 
{ 
    static App() 
    { 
     FrameworkElement.LanguageProperty.OverrideMetadata(
      typeof(FrameworkElement), 
      new FrameworkPropertyMetadata(
       XmlLanguage.GetLanguage(CultureInfo.CurrentCulture.IetfLanguageTag))); 
    } 
} 

Si vous voulez seulement mettre la culture pour un contrôle spécifique, vous pouvez lier sa propriété Language à une propriété de votre datacontext:

<TextBlock Text="{Binding Something}" Language="{Binding TheLanguage}" /> 
+0

Merci Thomas, mais je dois le faire pour ma bibliothèque de contrôle personnalisée. Il m'est arrivé de voir le CultureConverter dans la liaison. Mais, je ne sais pas comment l'utiliser pour définir la culture actuelle. Ce n'est pas une propriété de dépendance. :( –

+0

Voir ma mise à jour –

Questions connexes