如何让 visual studio 中的表单记住 C# 中 5 个按钮中最后检查的 ReadioButtom?

How can I make my form in visual studio to remember the last checked ReadioButtom among 5 buttoms in C#?

所以我有一个我认为是非常基本的问题,但我不知道该怎么做。所以我正在使用 C# 在 visual studio 中为游戏制作启动器,其中用户必须按 5 个中的一个 RadioButtom 到 select 一种语言。

按钮只是将一些字符放入字符串变量 x。

它默认为英语,但如果某人 select 是西班牙语,我希望当表单第二次打开时表单中的 RadioButtom 为西班牙语,因为西班牙语是最后一个 selected,但每次打开表单时,它都会返回到默认的英文按钮。

        if (rbEnglish.IsChecked == true)
            x = "eng";
        if (rbSpanish.IsChecked == true)
            x = "spa";
        if (rbItalian.IsChecked == true)
            x = "ita";
        if (rbGerman.IsChecked == true)
            x = "ger";
        if (rbFrench.IsChecked == true)
            x = "fre";

这只是一个按钮,它读取 x 中的字符串以使用 selected RadioButtom 语言开始游戏。我想做到这一点,这样人们就不必每次都select他们喜欢的语言,这样他们就可以按下按钮。

如果希望表单中的单选按钮在最后选中的按钮上,可以参考以下步骤: 首先创建一个名为 Language:

的枚举
public enum Language
    {
        eng,
        spa,
        ita,
        ger,
        fre
    }

Setting.settings 文件上的第二个 double-click 并将语言设置为 int。

最后可以参考这段代码:

public partial class Form1 : Form
{
    public string x;
    public Form1()
    {
        InitializeComponent();
        if (Settings.Default.Language == (int)Language.eng)
            rbEnglish.Checked = true;
        if (Settings.Default.Language == (int)Language.spa)
            rbSpanish.Checked = true;
        if (Settings.Default.Language == (int)Language.ita)
            rbItalian.Checked = true;
        if (Settings.Default.Language == (int)Language.ger)
            rbGerman.Checked = true;
        if (Settings.Default.Language == (int)Language.fre)
            rbFrench.Checked = true;
    }
    public enum Language
    {
        eng,
        spa,
        ita,
        ger,
        fre
    }
    private void button1_Click(object sender, EventArgs e)
    {
        if (rbEnglish.Checked)
        {
            Settings.Default.Language = (int)Language.eng;
            x = Language.eng.ToString();
        }
        if (rbSpanish.Checked)
        {
            Settings.Default.Language = (int)Language.spa;
            x = Language.spa.ToString();
        }
        if (rbItalian.Checked)
        {
            Settings.Default.Language = (int)Language.ita;
            x = Language.ita.ToString();
        }
        if (rbGerman.Checked)
        {
            Settings.Default.Language = (int)Language.ger;
            x = Language.ger.ToString();
        }
        if (rbFrench.Checked)
        {
            Settings.Default.Language = (int)Language.fre;
            x = Language.fre.ToString();
        }
        textBox1.Text = x;
        Settings.Default.Save();
    }
}

这是测试结果