C# 多个窗体之间查找控件
1.在Form5 中 放一个分隔Panel,加载的时候显示一个窗体在里面:
private void Form5_Load(object sender, EventArgs e)
{
Form55 myfrom = new Form55();
this.splitContainer1.Panel2.Controls.Clear();
myfrom.TopLevel = false;
this.splitContainer1.Panel2.Controls.Add(myfrom);
myfrom.Show();
}
2. 在Form55 窗体中,增加一个按钮,用来查找到splitContainer这个,然后再另外一个分隔页面中添加另一个窗体。
private void button1_Click(object sender, EventArgs e)
{
// Form myform = this.Parent.FindForm();
// Form myform = (Form)this.FindForm().Parent.FindForm();
//Form myform = this.ParentForm();
// Label myLabel = this.Parent.FindForm().Controls.Find("label1",true)[0] as Label;
// Label myLabel = this.Parent.FindForm().Controls.Find("label1", true)[0] as Label;
// myform.Text = "MY Form";
// myLabel.Text = "test mylabel";
// Form myform = this.Parent.FindForm();//上一级窗体的Form
showForm();
}
private void showForm()
{
Form3 form3 = new Form3();
form3.TopLevel = false;
SplitContainer splitContainer = this.Parent.FindForm().Controls.Find("splitContainer1",true)[0] as SplitContainer;
splitContainer.Panel1.Controls.Clear();
splitContainer.Panel1.Controls.Add(form3);
form3.Show();
}