隐藏C#中的下拉列表

时间:2013-05-03 15:05:42

标签: c# winforms checkbox combobox

我想创建一个复选框,如果选中该复选框,则应显示下拉列表。如果未选中,则应隐藏下拉列表。这就是我的代码在Form.Designer.cs文件中的外观。

        this.comboBox2.FormattingEnabled = true;
        this.comboBox2.Items.AddRange(new object[] {
        "Database 1",
        "Database 2",
        "Database 3"});
        this.comboBox2.Location = new System.Drawing.Point(165, 436);
        this.comboBox2.Name = "comboBox2";
        this.comboBox2.Size = new System.Drawing.Size(150, 21);
        this.comboBox2.TabIndex = 13;
        this.comboBox2.Text = "Database";

和其他文件中的我的复选框代码是

 if  (checkBox1.CheckState == CheckState.Checked)
        {

        }

5 个答案:

答案 0 :(得分:6)

使用Visible

this.comboBox2.Visible = false;

哪会隐藏comboBox2

答案 1 :(得分:2)

if (checkbox1.CheckState == CheckState.Checked)
{
 this.combobox2.Visible = True;
}

else (checkbox1.CheckState == CheckState.Unchecked)
{
 this.combobox2.Visible = False;
}

答案 2 :(得分:1)

你想要这样的东西

private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
        if (checkBox1.Checked == true)
            comboBox2.Visible = true;

        if (checkBox1.Checked == false)
            comboBox2.Visible = false;

您需要在属性选项卡中将comboBox2设置为visible = false,这应该可以正常工作。

答案 3 :(得分:0)

或者只是一行:

comboBox2.Visible = (checkbox1.CheckState == CheckState.Checked)

答案 4 :(得分:0)

如果有人遇到以下情况: dropwdownlist的头部在设置为yourCombo.visible = false;后隐藏,但列表本身仍然可见,然后您可以添加以下内容:

 yourComboBox.DroppedDown = false;