C# 按Button弹出新的窗体 Show()方法 和 ShowDialog()方法

您所在的位置:网站首页 打开新的桌面 C# 按Button弹出新的窗体 Show()方法 和 ShowDialog()方法

C# 按Button弹出新的窗体 Show()方法 和 ShowDialog()方法

2023-11-04 00:12| 来源: 网络整理| 查看: 265

在做串口通信程序时,有个想法,当点击串口设置按钮时,弹出一个新的窗口,可以设置串口相关信息,如何实现这一操作呢?

1 新建一个项目,窗体为form1

 2 选择项目名称,单击右键,选择【添加】→【窗体】,弹出新的界面。

3 在新的界面,选择【窗体(windows 窗体】→【添加】,生成“form2”窗体。

 4 在form1的窗口中拖入一个button按键,修改text的属性为 切换窗体2

5 双击 切换窗体2 按键,进入代码编写界面,插入代码 

private void button1_Click(object sender, EventArgs e) { Form2 form2 = new Form2(); form2.ShowDialog(); }

6 运行结果

 按form1 切换窗口2按键,弹出form2,由于我们用的是 ShowDialog(); 所以此时,主窗口是form2,只能编辑form2的内容,点击 退出按键,才能回到form1编辑。

7 下面我们介绍 Show()方法 和 ShowDialog()方法 都可以弹出我们想要的窗口,但是他们的效果明显不同,可以小结概述为下面几个方面差异。

 注意:Show()和Hide() 是一对,ShowDialog()和Close()是一对。 请一一对应,不能混用的哦。

有兴趣的可以搭个程序试试

先建立两个基本窗口,如下图,(右边)是主窗口,会先启动,其次是弹出界面Dialog(左边)。

 主窗口代码:

public Form1() { InitializeComponent(); } //实例化主窗口类,当然也可以直接写 Dialog _dlg = new Dialog(); private void button_show_Click(object sender, EventArgs e) { _dlg.Show();//显示子窗口 } private void button_hide_Click(object sender, EventArgs e) { _dlg.Hide();//隐藏子窗口 } private void button_showDialog_Click(object sender, EventArgs e) { //实例化子窗口类,一定要实例化,不然不能弹出 Dialog _dialog = new Dialog(); //弹出对话框 _dialog.ShowDialog(); }

弹出窗口代码:

public Dialog() { InitializeComponent(); } private void button_ok_Click(object sender, EventArgs e) { //指定返回结果 this.DialogResult = DialogResult.OK; //关闭 this.Close(); } private void button_cancel_Click(object sender, EventArgs e) { //指定返回结果 this.DialogResult = DialogResult.Cancel; //关闭 this.Close(); } private void hide_Click(object sender, EventArgs e) { //隐藏 this.Hide(); }

8 打开新窗口,如果想关闭原来的界面,可以如下操作

Form1 form1 = new Form1();//想要打开的窗体界面 this.Hide();//隐藏当前窗体 form1.ShowDialog(); Application.ExitThread(); //退出当前窗体,这一步很重要,否则最后可能无法将所有进程关闭。最好是在跳转页面后,将之前的页面退出。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3