C#动态添加的控件准备完毕触发什么事件?

2025-04-08 12:23:16
推荐回答(1个)
回答1:

private void button1_Click(object sender, EventArgs e)
{
    // 向窗体添加一个文本框
    TextBox tb = new TextBox();
     addCon(tb);
}

// addCon方法修改如下
private void addCon(Control con)
{
    if (con is TextBox)
    {
               TextBox textBox = con as TextBox;
                textBox.Multiline = true;
                textBox.Dock = DockStyle.Fill;
                // 注意:是被添加控件的容器引发ControlAdded事件!!!
                this.ControlAdded += Form1_ControlAdded;
                this.Controls.Add(textBox);
      }
      //其余代码略……
}

void Form1_ControlAdded(object sender, ControlEventArgs e)
{
    MessageBox.Show(e.Control.GetType().Name + "已经添加到窗体");
}