2009-08-12 10 views
2

Wie programmiere ich programmatisch die in WinXP verwendete Sprache mit .Net 2.0 (oder einem pInvoke). Der Benutzer hat keinen Zugriff auf die Taskleiste in der Anwendung, an der ich gerade arbeite, sodass die Eingabemethode die ausgewählte Sprache der Anwendung widerspiegeln muss. Ich muss in der Lage sein, die Sprache von einem links-rechts zu einem rechts-nach-links und wieder zurück zu tauschen, ohne die Anwendung neu zu starten. Steuerelemente können jedoch neu erstellt werden.Programmatische Änderung der WinXP-Sprache

Antwort

0

Die Sprache sollte es ist die Sprache in Arabisch in C# zu ändern, in dem System installiert werden, überprüfen Sie den folgenden Code ein: es

public void ToArabic() 
    { 
     string CName= ""; 
     foreach(InputLanguage lang in InputLanguage.InstalledInputLanguages) 
     { 
      CName = lang.Culture.EnglishName.ToString(); 

      if(CName.StartsWith("Arabic")) 
      { 
       InputLanguage.CurrentInputLanguage = lang; 
      } 
     } 

    } 

, um wieder zurück ins Englische

public void ToEnglish() 
     { 
      string CName= ""; 
      foreach(InputLanguage lang in InputLanguage.InstalledInputLanguages) 
      { 
       CName = lang.Culture.EnglishName.ToString(); 

       if(CName.StartsWith("English")) 
       { 
        InputLanguage.CurrentInputLanguage = lang; 
       } 
      } 

     } 

Sie verwenden können, diesen Code in Ihrer Anwendung, um die Eingabesprache zu ändern. Der Benutzer kann auch Alt + Shift drücken, um zwischen der im System definierten Sprache zu wechseln.

Verwandte Themen