winform隐藏后如何显示

seaer06 2009-07-10 11:49:36
我有二个winform ,Form1,Form2
在Form1中有一Button:
Form2 frm2=new Form2();
frm2.Show();
this.Hide();


我想在第二个Form2同样设一个Button,把Hide()的Form1显示出来,同时隐藏Form2,把原来From1中的值再次显示出来,不要使用New关键字重新初始化Form1.
...全文
177 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
paulin 2009-07-11
  • 打赏
  • 举报
回复
在Form2中声明一个事件,用来通知Form1做些事情,此处是让Form1再显示
这里简单就声明个EventHandler类型事件参照吧

form2

public event EventHandler Form1Do;
private void button1_Click(object sender, EventArgs e)
{
this.Hide();
if (Form1Do != null)
{
Form1Do(sender, e); //通知Form1做事情
}
}

Form1
private void button4_Click(object sender, EventArgs e)
{
Form2 f = new Form2();
f.Form1Do += new EventHandler(f_Form1Do); //注册Form2要Form1做的具体事情
f.Show();
this.Hide();
}

void f_Form1Do(object sender, EventArgs e)
{
this.Show();
}

-过客- 2009-07-11
  • 打赏
  • 举报
回复
把Form1做为参数传过去
//Form1中
private void button1_Click(object sender, EventArgs e)
{
Form2 f2 = new Form2(this);
f2.Show();
this.Hide();
}
//Form2中
Form f1;
public Form2(Form f)
{
f1 = f;
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
this.Hide();
f1.Show();
}
gui0605 2009-07-10
  • 打赏
  • 举报
回复
不用重新初始化,使用单例模式
参考

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧