0

我想要一个带有表格的表格。第一行将描述一个比例。在表格中的每个单元格中,都会有一个复选框按钮,我可以选择。(只能选择一个(验证))

              **1**             **2**           **3**
a)______________checkBoxbttn_____________________   checkBoxbttn____________________              V

b)     ____________  checkBoxbttn___________________________        V        ___________________      checkBoxbttn

在每一行中只标记一个复选框(验证)后,我需要将每一行的选择保存在一个参数中,以备将来使用。对于上面的例子: int a = 3; 诠释 b = 2;

我该如何实施?验证看起来如何?

4

1 回答 1

0

我建议您使用TableLayoutPanel一列和任意数量的行。在每个单元格中,放置一个Panel. 在每个面板中,放置三个RadioButton控件,以确保只选择其中一个。

要知道选择了哪个 RadioButton,您可以遍历每个 Panel 的控件并返回第一个选中的控件。

例子:

private void button1_Click(object sender, EventArgs e)
    {
        foreach (var row in tableLayoutPanel1.Controls)
        {
            var panel = row as Panel;
            if (panel == null) continue;
            var checkedButton = 
                panel.Controls.OfType<RadioButton>()
                    .FirstOrDefault(r => r.Checked);
            if (checkedButton == null) continue;
            //Process your radiobutton here.
        }
    }

要将特定值分配给 RadioButton,我将创建一个派生自它的类,并使用一个表示您的值的属性。

例子:

class ScaleRadioButton : RadioButton
{
    public int MyScale { get; set; }
}
于 2012-12-14T15:17:27.967 回答