Pannel中的窗体跳转(C#的Winform)
目前我有个主窗体frm_main,窗体中有pannel1控件,控件中加载的窗体为frm1,加载控件没问题,现在的情况是我想在frm1上添加一个button按钮,然后点击按...
目前我有个主窗体frm_main,窗体中有pannel1控件,控件中加载的窗体为frm1,加载控件没问题,现在的情况是我想在frm1上添加一个button按钮,然后点击按钮实现pannel1中的窗体跳转到frm2,就是将pannel1中的窗体变换为frm2,求大神,求代码。
展开
2个回答
展开全部
1)FormMain.cs
后台代码 FormMain.cs
using System;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class FormMain : Form
{
public FormMain()
{
InitializeComponent();
}
// 主窗体启动时,在panel中先显示Form1
private void FormMain_Load(object sender, EventArgs e)
{
Form1 f1 = new Form1(this);
f1.TopLevel = false;
panel1.Controls.Add(f1);
f1.Show();
}
// 添加一个pubilc 方法:在panel中显示Form2
public void ShowForm2()
{
Form2 f2 = new Form2();
f2.TopLevel = false;
panel1.Controls.Add(f2);
f2.Show();
}
}
}
2)Form1
后台代码 Form1.cs
using System;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
FormMain frmMain;
// 添加一个构造函数,传入 FormMain
public Form1(FormMain frmMain)
: this()
{
this.frmMain = frmMain;
}
// 关闭Form1,显示Form2
private void button1_Click(object sender, EventArgs e)
{
this.Close();
frmMain.ShowForm2();
}
}
}
3)Form2,没有任何改变
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
}
}
4)运行
点击按钮后
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询