日期:2014-05-17  浏览次数:20775 次

今天看到一个关于dataGridView1.Controls.Clear的问题,不明白求解
        private void Form1_Load(object sender, EventArgs e)
        {
            
            for (int i = 0; i < 5; i++)
            {
                TextBox lv = new TextBox();
                lv.Text = "1231231231";
                lv.Left += i * 30;
                lv.Top += i * 10;
                dataGridView1.Controls.Add(lv);
            }
            
        }

        private void button1_Click(object sender, EventArgs e)
        {
            dataGridView1.Controls.Clear();
        }

本来想回答别人问题,所以测了一下,发现确实有问题
按下BUTTON后dataGridView的控件无法一次性删除,要按好几次才行,求问是不是编辑器的问题还是

------解决方案--------------------
foreach (Control c in dataGridView1.Controls.OfType<Control>().ToList())
    dataGridView1.Controls.Remove(c);
------解决方案--------------------
好神奇 果然清除不完全 换成panel就可以