Während der Entwicklung von SimpleScreenshot habe ich mich auch mal nach Möglichkeiten umgesehen mehrsprachige Anwendungen mit .Net zu erstellen. Glücklicherweise hat Microsoft sich da was ausgedacht: Einfach eine Eigenschaft im Designer umstellen, dann jeweils die Sprachen eintragen, und schon ist die Anwendung übersetzt. Klingt doch toll, oder? Ist es auch, aber nur wenn man Anwendungen macht, die nur in bestimmten Sprachen ausgeliefert werden.
Nur was ist, wenn man mal (wie bei SimpleScreenshot) dem Benutzer die Möglichkeit geben möchte die Anwendung zu übersetzen? Ich habe dazu ein kleines System geschrieben, dass das ermöglicht. Das hat nur einen großen Nachteil: Man kann den Designer aus dem Visual Studio nicht mehr benutzen, und wenn man die Warnungen ignoriert, wird der gesamte Text von allen Steuerelementen gelöscht, und die ganze Übersetzung aus dem Code geschmissen!
Die „richtige“ Übersetzung, hat übrigens auch mein gesamtes Formular zerstört… Diese Lösung ist für Anwendungen, die fertig übersetzt ausgeliefert werden sollen, sicherlich gut durchdacht, aber Microsoft muss IMHO auch mal an die „kleinen“ Privatprogrammierer denken, die die Anwender übersetzen lassen wollen. Auf Linux ist das Gang und Gebe!