如题,当Combobox为空时,他还会显示一条空白的下拉框,如图:有什么办法能让它为空时,不显示下面的那个白的下拉框吗?

解决方案 »

  1.   

    if (comboBox1.Items.Count>0)
                {
                    comboBox1.Enabled = true;
                }
                else
                {
                    comboBox1.Enabled = false;
                }貌似不能不显示,只能禁用了
      

  2.   

    DataTable table = (DataTable)comboBox1 .DataSource;   //把数据源赋给table
                DataRow dr = table.NewRow();
                dr[0] = "0";
                dr[1] = "---请选择---";
                table.Rows.InsertAt(dr, 0);            comboBox1.DataSource = table; //comboBox1 的数据源为table 
                comboBox1.SelectedIndex = 0;  //默认显示"请选择"
      

  3.   

    改成--请选择--就挺好的,如果不愿意的话可以设置 DropDownHeight=1, DropDownWidth=1,不过样子有点丑,你自己试试看吧
      

  4.   

    这个单个combobox还可以,但是我用的是DataGridViewComboBoxCell,好像没DropDownHeight属性,只有DropDownWidth。
      

  5.   

    一般控件 都有  “鼠标即将点下” 的事件,  在这个事件中,将 事件取消 e.Cancel=true; ——于是,之后的  “鼠标已经点下” 事件就不会触发,白色区域也就不会 出来......猜想!
      

  6.   

    截图隐藏在上面,当为空值,隐藏combox 显示静止的图;当有值为显示combox! ,截图隐藏.
      

  7.   

    这个能实现?能写下代码?
    我现在已经实现了,把cell的属性ReadOnly=true;