Ich frage mich, ob es eine einfache Lösung gibt, die Sprache einer WPF-Anwendung während der Laufzeit zu ändern. Ich habe LocBaml verwendet, um alle Ressourcen zu globalisieren. Das Setzen der UICulture des aktuellen Threads im App-Konstruktor funktioniert gut, aber wenn ich versuche, sie etwas später zu ändern, spiegelt es die Änderungen nicht mehr wider. Das war eigentlich ziemlich einfach mit WinForms, aber ich habe keine Ahnung, wie ich dasselbe Problem mit WPF lösen kann. Irgendwelche Ideen? Grüße j.
Antwort
Zu viele Anzeigen?Nein.
Wenn Sie eine Assembly laden und sie an Ihre Anwendung gebunden ist, können Sie Klassen nicht während der Arbeit ändern. Sie könnten eine Bootstrapper-Assembly erstellen, die die aktuelle Sprache lädt, und wenn Sie die Sprache ändern, schließen und öffnen Sie Ihre Anwendung automatisch neu, aber ich bezweifle, dass das ist, was Sie wollen oder brauchen.
Was ich in einem meiner Projekte gemacht habe, war ein globalisiertes Anwendungs-Framework unter Verwendung von Konvertern usw. Einige Probleme, auf die ich gestoßen bin, können Sie hier sehen, insbesondere diesen Beitrag, der zeigt, wie es aussah. HTH, wenn Sie sich entscheiden, den gleichen Weg wie ich zu gehen.