Ändern der Sprache zur Laufzeit in C# winform

Ich möchte, um die Sprache zu ändern, aber wenn ich kompilieren dies eine Ausnahme pop-up. es sagt

"Konnten keine entsprechenden Ressourcen für die angegebene Kultur oder
die Neutrale Kultur. Stellen Sie sicher, dass "System.Typ.Ressourcen" war richtig
eingebettete oder verknüpfte in assembly "mscorlib" zur compile-Zeit oder, dass
alle Satelliten-Assemblys erforderlich sind belastbar und voll signiert."

 private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (comboBox1.SelectedItem.ToString() == "English")
        {
            Thread.CurrentThread.CurrentUICulture = new CultureInfo("En");
            ChangeLanguage("En");
        }
        else if (comboBox1.SelectedItem.ToString() == "German")
        {
            Thread.CurrentThread.CurrentUICulture = new CultureInfo("De");
            ChangeLanguage("De");
        }
    }


    private void ChangeLanguage(string lang)
    {
        foreach (Control c in this.Controls)
        {
            ComponentResourceManager resources = new ComponentResourceManager(typeof(Type));
            resources.ApplyResources(c, c.Name, new CultureInfo(lang));
        }
    }

Irgendwelche Vorschläge?

In comboBox1_SelectedIndexChanged setzen-Konsole.Writeline ("comboBox1".SelectedItem.ToString()); so können Sie sehen, wo ist der Fehler
Mann, das ist gonna lösen nichts ...
Ich weiß, aber ich möchte wissen, ob die comboBox1_SelectedIndexChanged heißt in der formLoad
ja, es ist SettingsForm aber was auch immer, seine nicht in Hauptformular

InformationsquelleAutor franzp | 2014-01-11

Schreibe einen Kommentar