选中单选按钮时如何使文本框不可见

时间:2013-10-28 20:26:12

标签: c# radio-button

我正在研究C#应用程序。我在组面板中有10个单选按钮,所以现在如果我只检查了radioButton10,那么textBox1将是可见的,如果我检查了其他单选按钮(radioButton1 .... radioButton9),那么textBox1应该是不可见的。 我编写了以下代码,但textBox1仍然可见。如果代码是正确的,我可以在哪里编写它(表单加载,某些函数等等),如果它不是,那么请帮助。

    public TeamInfoForm()
    {
        InitializeComponent();
        showTeam();
        if (radioButton10 .Checked)
            textBox1 .Visible = true;
        else
            textBox1 .Visible = false;

    }

2 个答案:

答案 0 :(得分:1)

我认为您忘记执行检查或取消选中radiobutton时发生的事件。尝试为radiobutton创建“OnCheckChanged”事件,如果您希望事件发生,则必须将autopostback设置为true,否则事件将无效。

答案 1 :(得分:0)

最初,您必须在Forms Designer中将textBox1的Visible属性设置为false。否则,您可以在FormInitialize()方法中设置它。接下来,您可以编写如下代码

    public void ToggleTextBox()
    {
        textBox1.Visible = radioButton3.Checked;
    }

    private void radioButton1_CheckedChanged(object sender, EventArgs e)
    {
        ToggleTextBox();
    }

    private void radioButton2_CheckedChanged(object sender, EventArgs e)
    {
        ToggleTextBox();
    }

    private void radioButton3_CheckedChanged(object sender, EventArgs e)
    {
        ToggleTextBox();
    }