
Lokalisierung von NetAdvantage Windows Forms Controls
Lokalisierung von NetAdvantage Windows Forms Controls
Der Einsatz visueller Zusatzkomponenten, wie zum Beispiel NetAdvantage von Infragistics, kann der eigenen Anwendung schnell einen professionellen Touch verleihen. Mit wenigen Mausklicks kann man seinen Kunden Ribbons, gruppierbare Tabellen und weitere Nettigkeiten bieten.
Getrübt wird die Freude jedoch kurz nach dem Start der eigenen Anwendung, wenn dem Benutzer englische Texte in der deutschen Applikation präsentiert werden. Zurück in Visual Studio zeigt ein schneller Klick durch die Control Eigenschaften, dass sich die englischen Texte leider nicht so einfach über die IDE editieren lassen.
Um nun also nicht bereits innerhalb der ersten zwei Minuten jeden Anschein von Professionalität der eigenen Anwendung zu verlieren, möchte ich im folgenden Beispiel die Möglichkeiten der Infragistics NetAdvantage Windows Forms Control Lokalisierung zeigen.
Ausgehen werde ich von einer einfachen Anwendung mit einem Formular, das ein UltraGrid beherbergt. Innerhalb des Designers habe ich sowohl Gruppierung als auch Filterung aktiviert. Die folgenden Screenshots zeigen das Hauptformular der Anwendung sowie Infragistics eingebauten Filter-Dialog.
Um die englischen Texte nun also los zu werden, deklariert man zunächst eine Variable vom Typen Infragistics.Shared.ResourceCustomizer. Dieser weist man im nächsten Schritt die Customizer Eigenschaft der betreffenden Assembly - in unserem Fall also der UltraWinGrid Assembly - zu.
Im Quellcode sähe das ungefähr wie folgt aus:
// Auf Ressource Customizer Objekt der UltaWinGrid Assembly verweisen
Infragistics.Shared.ResourceCustomizer rc;
rc = Infragistics.Win.UltraWinGrid.Resources.Customizer;
Anschließend kann man die englischen Default-Texte, mehr oder weniger bequem, über die Methode SetCustomizedString(name, customizedText)
des Customizers verändern.
Den Gruppierungsbereich könnte man z. B. wie folgt übersetzen:
// Text für Grid Gruppierung
rc.SetCustomizedString("GroupByBoxDefaultPrompt", "Um nach einer Spalte zu gruppieren, ziehen Sie die Spaltenüberschrift hierhin.");
Etwas müßig ist lediglich das Aufspüren der entsprechenden name Einträge zu den gewünschten Texten. Hierzu gehe ich immer wie folgt vor:
Ausgehend von folgender Übersicht navigiere ich zur den Texten meines entsprechenden Controls. Anschließend suche ich in der Übersicht den passenden name Eintrag für den gewünschten Text.
Die Übersetzungen gelten übrigens Applikationsübergreifend für alle Vorkommen des entsprechenden Controls. Um ein einheitliches Bild zu präsentieren sollte man seine Lokalisierung daher relativ früh durchführen.
Mein komplettes Beispielprogramm gibts
.
Achtung: Zum Ausprobieren wird NetAdvantage 2007 Vol 3 benötigt!
Other posts

Lebensdauer von SQLite-Datenbankverbindungen in .NET MAUI und Xamarin.Forms: Kurz- oder Langlebig?

Verstärkung bei der Quality Bytes GmbH in Sinzig gesucht (Softwareentwickler .NET, Softwareentwickler Angular, Xamarin, ASP.NET Core)

Klickbare Labels Mit Xamarin.Forms

Fehler: Xamarin.Forms legt in Visual Studio 2017 Update 5 leere Projektmappe an

Was tun, wenn die Xamarin App während der iOS Store Prüfung wegen einer Exception abgelehnt wird?

Hilfe! Xamarin iOS Simulator startet nicht und stürzt mit Fehler: 'A fatal error occured when trying to start the server' ab