C#windows forms中如何在一个窗体中指定模块处显示其他窗体,并且单击按钮可以来回切换其他窗体
如何在一个窗体中指定模块处显示其他窗体,并且单击按钮可以来回切换其他窗体。我现在是在一个Mainform窗体的l容器中显示其他窗体,当单击button1时,显示form1...
如何在一个窗体中指定模块处显示其他窗体,并且单击按钮可以来回切换其他窗体。我现在是在一个Mainform窗体的l容器中显示其他窗体,当单击button1时,显示form1,单击button2时显示form2窗体。但是当我这地方实现不了切换,单击button1时显示form1,此时如果再单击button2切不到form2中,这是什么原因。如果panel不行,或者我写的有问题,求指点。(答对给悬赏分)
private void button3_Click(object sender, EventArgs e)
{ panel1.Visible = true;
Form2 frm = new Form2();
showform(frm); }
void showform(Form rightfrom)
{
rightfrom.FormBorderStyle = FormBorderStyle.None;
rightfrom.TopLevel = false;
rightfrom.SetBounds(0, 0, this.panel1.Width, this.panel1.Height);
panel1.Controls.Add(rightfrom);
rightfrom.Show();
}
private void button4_Click(object sender, EventArgs e)
{
panel1.Visible = true;
Form3 frm = new Form3();
showform(frm); }
我是这么写的,但是实现不了切换,只能定死在你第一次的button事件中。 展开
private void button3_Click(object sender, EventArgs e)
{ panel1.Visible = true;
Form2 frm = new Form2();
showform(frm); }
void showform(Form rightfrom)
{
rightfrom.FormBorderStyle = FormBorderStyle.None;
rightfrom.TopLevel = false;
rightfrom.SetBounds(0, 0, this.panel1.Width, this.panel1.Height);
panel1.Controls.Add(rightfrom);
rightfrom.Show();
}
private void button4_Click(object sender, EventArgs e)
{
panel1.Visible = true;
Form3 frm = new Form3();
showform(frm); }
我是这么写的,但是实现不了切换,只能定死在你第一次的button事件中。 展开
展开全部
你写的没错,少写了个,
void showform(Form rightfrom)
{
panel1.Controls.Clear();
rightfrom.FormBorderStyle = FormBorderStyle.None;
rightfrom.TopLevel = false;
rightfrom.SetBounds(0, 0, this.panel1.Width, this.panel1.Height);
panel1.Controls.Add(rightfrom);
rightfrom.Show();
}
这样就对了。。。把原来的清空
void showform(Form rightfrom)
{
panel1.Controls.Clear();
rightfrom.FormBorderStyle = FormBorderStyle.None;
rightfrom.TopLevel = false;
rightfrom.SetBounds(0, 0, this.panel1.Width, this.panel1.Height);
panel1.Controls.Add(rightfrom);
rightfrom.Show();
}
这样就对了。。。把原来的清空
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询