.NET Lokalisierung - Wie setze ich eine Sprache?

8

Ich habe mein ExportForm in Deutsch (de) und Russisch (ru) lokalisiert, wie Sie unten sehen können:

Wenn meine CultureInfo Deutsch (Austrian-de-AT) ist, dann ist alles in Ordnung, ich sehe das Format ins Deutsche übersetzt:

%Vor%

Aber ich sehe die englische Benutzeroberfläche mit der russischen (ru-RU) CultureInfo

%Vor%

Obwohl, wenn ich "ru" anstelle von "ru-RU" verwende, um CultureInfo zu erstellen, funktioniert es:

%Vor%

Könnten Sie mir bitte helfen, was das Problem sein könnte? Oder zeigen Sie mir bitte eine Richtung, um das Problem zu untersuchen.

    
Murat from Daminion Software 18.05.2012, 11:08
quelle

2 Antworten

2

Ich habe das Problem festgestellt: ru-RU wurde in meinen Haupteinstellungen für die Projektassemblierung als neutrale Sprache ausgewählt.

MSDN: Das Attribut NeutralResourcesLanguage informiert den ResourceManager über die Sprache, die zum Anzeigen der Ressourcen der neutralen Kultur für eine Assembly verwendet wurde. Wenn Ressourcen in der gleichen Kultur wie die Sprache für neutrale Ressourcen gesucht werden, verwendet der ResourceManager automatisch die Ressourcen, die sich in der Hauptbaugruppe befinden. Dies geschieht, anstatt nach einer Satellitenassembly zu suchen, die die aktuelle Benutzeroberflächenkultur für den aktuellen Thread aufweist. Dies verbessert die Suchleistung für die erste Ressource, die Sie laden, und kann Ihren Arbeitssatz reduzieren.

Ссылка

    
quelle
0

ru ist der neutrale Name für die russische Kultur, und Ru-Ru ist der Name der spezifischen russischen (Russland) Kultur.

Dies wird vom MSDN-Link <übernommen / a>

  
    

Beim Start legt das Beispiel die aktuelle Kultur und die aktuelle Benutzeroberfläche fest     Kultur zu Russisch (Russland) auf allen Systemen außer denen, auf denen die     Standardsystemkultur ist bereits Russisch (Russland). Wenn der Standardwert ist     Systemkultur ist bereits Russisch (Russland), der Code setzt die aktuelle     Kultur und die aktuelle UI-Kultur nach Englisch (USA).

  

Hier finden Sie weitere gute Erklärungen

  

Wenn die Ressourcen für eine bestimmte Kultur in der   Betriebssystem sind die Ressourcen für die damit verbundene neutrale Kultur   benutzt. Wenn die Ressourcen für die neutrale Kultur nicht verfügbar sind,   Ressourcen, die in der Hauptbaugruppe eingebettet sind, werden verwendet.

     

Die Liste der Ländereinstellungen in der Windows-API unterscheidet sich geringfügig von der   Liste der von .NET Framework unterstützten Kulturen. Wenn Interoperabilität   mit Windows wird zum Beispiel durch den p / invoke-Mechanismus benötigt,   Die Anwendung sollte eine bestimmte Kultur verwenden, die für die   Betriebssystem. Die Verwendung der spezifischen Kultur gewährleistet Konsistenz mit   das entsprechende Windows-Gebietsschema, das mit einem Gebietsschema identifiziert wird   Bezeichner, der mit LCID identisch ist.

    
jams 18.05.2012 11:31
quelle

Tags und Links