如何在WindowsFormsApplications中使用单选按钮?如何检查是否已更改?

时间:2019-01-30 02:20:35

标签: c# winforms

我正在研究一个小程序,该程序将输出一个字符串以帮助授予经济援助奖学金。奖学金有一定类型,可能有也可能没有等级,如果是“转移”奖学金,则必须为4个学期,6个学期或8个学期。

我是使用Windows Forms应用程序的新手,因此,由于我正在从事初学者项目,因此请尽可能使答案简单。

(如果我在这里使用错误的术语,请原谅,但我会尽我所能描述)。

我需要“访问”单选按钮,并检查它们是否已被勾选。我也不知道如何更新以查看是否已更改。

我所有的代码都在comboBox1_SelectIndexChained中,我想我需要将其分解为不同的方法,例如radiobutton1.CheckChanged等。

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
    Object m = comboBox1.SelectedItem;
    string stringM = m.ToString();

    if (radioButton1.Checked && radioButton2.Checked)
    {
        MessageBox.Show("Error. Student cannot receive Tier 1 and Tier 2.");
        Form1 NewForm = new Form1();
        NewForm.Show();
        this.Dispose(false);
    }
    switch (stringM)
    {
        case "Distinguished Freshman":
            MessageBox.Show("####");
            break;
        case "Presidential Scholarship (Tier 1: $9,500)":
                if(radioButton1.Checked)
                    {
                        MessageBox.Show("P1H183S 9500");
                    }
                else if(radioButton2.Checked)
                    {
                        MessageBox.Show("P1H183S 9000");
                    }
            break;
        case "University Centurium (Tier 1: $7,000)":
            if (radioButton1.Checked)
            {
                MessageBox.Show("1UC183S 7000");
            }
            else if (radioButton2.Checked)
            {
                MessageBox.Show("1UC183S 6500");
            }
            break;
        case "Red and Gray (Tier 1: $4,000)":
            if (radioButton1.Checked)
            {
                MessageBox.Show("1RG183S 4000");
            }
            else if (radioButton2.Checked)
            {
                MessageBox.Show("1RG183S 3500");
            }
            break;
        case "Reddie Achievement":
            MessageBox.Show("RAF 183S ####");
            break;
        case "Transfer (Tier 1: $4,500)":
            if (radioButton1.Checked)
            {
                MessageBox.Show("P1H182S 9500");
            }
            else if (radioButton2.Checked)
            {
                MessageBox.Show("P1H182S 9000");
            }
            break;
        case "Transfer (Tier 2: $4,000)":
            break;
    }
}

我希望用户使用组合框选择奖学金名称,然后根据需要选择1层或2层,如果(并且仅在)奖学金是转移奖学金的情况下,则选择4、6或8个学期。底部有一个清除按钮以清除整个表单,还有一个提交按钮。选择提交按钮后,我希望它打印一个可以复制/粘贴的字符串。 (MessageBox可以很好地解决这个问题,或者有人有更好的建议吗?)

非常感谢大家的帮助!

0 个答案:

没有答案