簡體   English   中英

動態創建按鈕時,如何在if else語句上調用單個單選按鈕?

[英]How Do I call individual radio buttons on if else statement when buttons are created dynamically?

我有下面的代碼,在該論壇中某人的button1_Click中,我無法確定下一步是什么。 假設我有4個單選按鈕,有人可以給我展示一個示例,當我單擊button2時如何根據每個單選按鈕的if else語句對每個單選按鈕使用if else語句嗎?

var list = new List<string>
{
    "First radio text", "Second radio text", "Third radio text", "And so on"
};

this.panel1.SuspendLayout();
for (var i = 0; i < list.Count; i++)
{
    var r = new RadioButton();
    r.Text = list[i];
    r.Tag = i;
    r.Name = string.Format("r{0}", i);
    r.Dock = DockStyle.Top;
    r.CheckedChanged += r_CheckedChanged;
    this.panel1.Controls.Add(r);
    r.BringToFront();
}
this.panel1.ResumeLayout(true);

您可以按名稱查看哪個單選按鈕發送了事件:

private void r_CheckedChanged(object sender, EventArgs e)
        {
            RadioButton radio = sender as RadioButton;

            if (radio.Name == "r1")
                MessageBox.Show("Radio 1 checked changed to: " + radio.Checked);
            else if (radio.Name == "r2")
                MessageBox.Show("Radio 2 checked changed to: " + radio.Checked);
            else if (radio.Name == "r3")
                MessageBox.Show("Radio 3 checked changed to: " + radio.Checked);
            else
                MessageBox.Show("Unknow radio button");
        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM