比如说,我在程序中新建了一个PANEL1对象,然后新建了一个LABEL1对象
然后使用PANEL1.Controls.Add(LABEL1)添加了这个对象
那么,当我在代码中获取到LABEL1这个对象后,有什么方法能查到是哪个容器包含了这个控件呢?请教各位大大,多谢!

解决方案 »

  1.   

     private void Form1_Load(object sender, EventArgs e)
            {
                Label label = new Label();
                label.Name = "label1";
                label.Text = "hello";
                this.panel1.Controls.Add(label);
            }        private void button1_Click(object sender, EventArgs e)
            {
                Label label = this.panel1.Controls.Find("label1", false)[0] as Label;
                MessageBox.Show(label.Parent.Name);
            }
      

  2.   

    LABEL1.Parent就是了Control.Parent Property
    http://msdn.microsoft.com/en-us/library/system.windows.forms.control.parent.aspx
      

  3.   

    再追加一个问题哈:P
    其实弄这个的目的是因为要做一个panel的单击响应事件,但是容器里有一堆控件。点击到控件的时候是不会触发容器的响应事件的。我现在的办法就是对每个控件添加监控,让他们触发同一个事件,这个还有其他什么简单的办法么?