Ich lokalisiere eine WPF-Anwendung mit .resx-Dateien. Ich habe Kopien von Hauptressourcen wie Resources.en-US.resx oder Resources.cs-CZ.resx erstellt. Funktioniert gut für Streicher. Ich kann jedoch nicht herausfinden, wie man andere Dateien wie Bilder oder Dokumente in Ressourcendateien lokalisiert.
Wenn ich der Ressourcendatei (entweder Resources.en-US.resx oder Resources.cs-CZ.resx) ein neues Image hinzufüge, wird immer eine Kopie der Datei in das Verzeichnis / Resources kopiert. Es kann also nicht mehrere Versionen einer Datei für mehrere Sprachen geben, da es in einem Verzeichnis nur eine Datei mit demselben Namen geben kann.
Ideale Lösung wäre, wenn Bilder von lokalisierten Ressourcen in Unterverzeichnisse wie / Resources / en-Us kopiert würden. Unter den aktuellen Bedingungen kann ich Bilder und Dokumente nicht mit RESX-Dateien lokalisieren. Irgendwelche Ideen, wie ich das erreichen kann? Danke.
Der folgende MSDN-Beitrag Ressourcen und Lokalisierung in ASP.NET 2.0 - Anzeigen von lokalisierten Bildern sagt:
Obwohl ASP.NET 2.0 die Lokalisierung von Bilddateien nicht direkt unterstützt, erfordert es nicht zu viel benutzerdefinierten Code, um den gewünschten Effekt zu erzielen.
Und bietet die folgende Arbeit:
Sie können beginnen, indem Sie die lokalisierten Versionen einer Imagedatei lokalisierten Versionen einer globalen Ressourcendatei hinzufügen. Die englische Version von LitwareSlogan.png wurde beispielsweise der globalen Ressourcendatei Litware.resx hinzugefügt, während Litware.fr.resx die französische Version von LitwareSlogan.fr.png hinzugefügt wurde. Die Ressourcen in beiden Ressourcendateien haben den gleichen Namen wie LitwareSlogan.
Der vollständige Beispielcode ist auf der Website verfügbar.
Tags und Links wpf .net c# localization