为毛有问题。。。

来源:互联网 发布:centos wifi配置 编辑:程序博客网 时间:2024/06/02 21:06
if (this._mydv != null)
            {
                //this._mydv.RowFilter = string.Format("code like '{0}%'", this.tb_DrogName.Text);
                Point cc = this.PointToScreen(this.tb_DrogName.Location);
                this._panel.Show(cc.X, cc.Y + this.tb_DrogName.Height + 1);
                this.Focus();

            }


        /// <summary>
        /// 下拉部分的容器 panel
        /// </summary>
        private ToolStripDropDown _panel = new ToolStripDropDown();

 if (this._mylistbox == null)
                    {
                        this._mylistbox = new ListBox();
                        this._mylistbox.FormattingEnabled = true;
                        this._mylistbox.ItemHeight = 12;
                        this._mylistbox.Size = new System.Drawing.Size(120, 88);
                        //this._panel.Items.Add(myconhost);
                        _mylistbox.DataSource = this._mydv;
                        _mylistbox.DisplayMember = "name";
                        this._mylistbox.Click += new EventHandler(_mylistbox_Click);


                        ToolStripControlHost ControlHost = new ToolStripControlHost(_mylistbox);
                        Panel a = new Panel();
                        a.Controls.Add(this._mylistbox);
                        ControlHost.AutoSize = false;
                        ControlHost.Padding = Padding.Empty;
                        ControlHost.Margin = Padding.Empty;
                        this._panel.Size = new Size(this._mylistbox.Size.Width + Padding.Horizontal, this._mylistbox.Size.Height + Padding.Vertical);
                        this._panel.Items.Add(ControlHost);
                    }


解决,加入combo

private void Form1_Load(object sender, EventArgs e)
        {
            DataTable dt = new DataTable();
            dt.Columns.Add("xianshi");
            dt.Columns.Add("ma");
            for (int i = 0; i < 1000; i++)
            {
                DataRow dr = dt.NewRow();
                dr["xianshi"] = "a" + i.ToString();
                dr["ma"] = "a" + i.ToString();
                dt.Rows.Add(dr);
            }
            this.dv = dt.DefaultView;


            this.comboBox1.DataSource = this.dv;
            this.comboBox1.DisplayMember = "xianshi";


            ToolStripControlHost ControlHost = new ToolStripControlHost(this.comboBox1);
            ControlHost.AutoSize = false;
            ControlHost.Padding = Padding.Empty;
            ControlHost.Margin = Padding.Empty;
            this._panel.Size = new Size(this.comboBox1.Size.Width + Padding.Horizontal, this.comboBox1.Size.Height + Padding.Vertical);
            this._panel.Items.Add(ControlHost);


        }


        private void textBox2_Enter(object sender, EventArgs e)
        {
            this.Text += "ent";
            Point cc = this.PointToScreen(this.textBox2.Location);
            //this._panel.Show(cc.X, cc.Y + this.textBox2.Height + 1);
            this._panel.Show(cc.X, cc.Y);
            this.comboBox1.Focus();
        }


        private void comboBox1_TextChanged(object sender, EventArgs e)
        {
            this.textBox2.Text = this.comboBox1.Text;
        }