一个项目上,有多个窗体需要来回打开切换,然后用的都是hide,因为用close的话,新打开的窗体会瞬间关闭,返回到主界面上。但是用hide的话,来回切换,最小化后任务栏上会显示打开了好多窗体,我就只想让它显示最后打开的那个窗体,这该怎么解决?
1条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
於黾 2021-09-30 08:21最佳回答 专家已采纳你的程序只有一个主窗体,program类里的main方法就是执行的form1.run(),因此它只要关闭,进程就结束了。
你要保证的只是主窗体绝对不要被关闭(但可以隐藏),其他窗体关闭是不会导致闪退的。
-==-=-=-=-=
另,针对你目前的代码,如果不想大改,那么你把子窗体的任务栏隐藏就好了。
窗体有一个ShowInTaskbar属性,默认是true,你改成false就不会在任务栏里显示它了。
-=-=-
全部使用hide也不是没有好处,比如有一个窗口是允许用户输入的,那么如果没有保存之前就关闭了,再打开它就变成默认的,而如果先hide后show,刚刚输入的内容还在里面。
-=-=-==-
还有,你的所有窗体都是show出来的,而不是showdialog,所以窗体之间是没有父子关系的。采纳该答案 已采纳该答案 专家已采纳评论解决 无用打赏举报微信扫一扫
分享评论登录 后可回复...
报告相同问题?
提交
相关推荐 更多相似问题
- 2021-09-30 06:22回答 1 已采纳 你的程序只有一个主窗体,program类里的main方法就是执行的form1.run(),因此它只要关闭,进程就结束了。你要保证的只是主窗体绝对不要被关闭(但可以隐藏),其他窗体关闭是不会导致闪退的。
- 2016-03-13 13:53回答 3 已采纳 tabcontrol.selectedtab.controls[控件名]
- 2019-06-05 08:08回答 1 已采纳 窗体 form = new 窗体(); form.MdiParent = this; //设定为mdi子窗体 form.TopLevel = false;
- 2021-02-07 13:301. Anders Hejlsberg-C#之父 Anders hejlsberg原木是曾经大名鼎鼎的 Borland公司的一员,他曾经编写了 Pasca编译 器,又把 Turbo pascal变为面向对象的 Object Pascal,并以此为基础开发了轰动全球、盛极 时的廾发工具 ...
- 2020-12-23 06:31weixin_39530833的博客 C#WinForm父级窗体内Panel容器中嵌入子窗体、程序主窗体设计例子在项目开发中经常遇到父级窗体嵌入子窗体所以写了一个例子程序,顺便大概划分了下界面模块和配色,不足之处还望指点主窗体窗体采用前面一篇博客设计...
- 2021-12-26 00:03秃头给你一拳的博客 第一章 C#概述: 1、CLR的概念和功能 CLR是一个可以由多编程语言使用的运行时。 CLR的核心功能:内存管理,程序集加载,安全性,异常处理,线程同步等等。可以被很多属于微软系列的开发语言使用。 2、 C#的优势和...
- 2021-05-30 10:57回答 3 已采纳 你这个是在一个面板上打开了另一个面板问题吧。
- 2015-12-15 03:50回答 2 已采纳 C#_WinForm窗体传值----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!
- 2022-04-23 11:37回答 2 已采纳 字符串类型不能转为 DataGridViewTextBoxColumn类型this.Name 是DataGridViewTextBoxColumn类型。this.Name.Name="Form1";/
- 2020-09-01 17:55奔波灞的博客 XML文件是一种常用的文件格式,例如WinForm里面的app.config以及Web程序中的web.config文件,还有许多重要的场所都有它的身影。Xml是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具...
- 2018-07-17 09:26Gold-Pan的博客 第一章 C#语言基础 本章介绍C#语言的基础知识,希望具有C语言的读者能够基本掌握C#语言,并以此为基础,能够进一步学习用C#语言编写window应用程序和Web...Microsoft.NET(以下简称.NET)框架是微软提出的新一代W...
- 2021-07-09 16:00敦厚的曹操的博客 一、窗体 创建一个"Windows窗体应用程序" 将主窗体的名称改为规则名称 Frm开头,后缀见名知意,遵从大驼峰命名法. 窗体应用程序是一个闭源软件,所以源代码不会公开,当一个软件在开发完之后,将本项目下/bin/debug...
- 2017-11-05 08:07回答 2 已采纳 sleep(1000) 可以用,不过下面加上: Application.DoEvents();
- 2022-03-04 10:33回答 2 已采纳 把C# Winforms桌面程序最小化到托盘?请参考: WinForm最小化到托盘以及托盘右键菜单 - 南宫萧尘 - 博客园 首先,先拖一
- 2019-10-30 13:37回答 1 已采纳 感觉是你dock anhor属性没有设置对,或者装入了错误的父容器,前者可能性大,检查anhor dock属性的设置
- 2016-08-22 11:13huangwuming714的博客 C#基础教程-c#实例教程,适合初学者。 第一章 C#语言基础 本章介绍C#语言的基础知识,希望具有C语言的读者能够基本掌握C#语言,并以此为基础,能够进一步学习用C#语言编写window应用程序和Web应用程序。当然仅靠一...
- 2018-07-26 21:45newbie_xymt的博客 09年暑假正好在学院实验室呆了一段时间,做了个完整的上位机软件(具体实现:根据下位机的指令,实现通过串口来操纵下位机进行实验,并将采集的数据进行处理和保存,并以图形的方式显示),整个项目边学C# WinF...
- 2012-02-17 20:22curve_life的博客 Form问题是最基本的问题,因为编写WinApp程序首先接触的对象就是它,因此在论坛中对它而产生的问题也最常见。...第一类问题:如何控制窗体的显示顺序; 第二类问题:窗体之间的对象如何相互引用或操作;
- 2015-09-23 08:35回答 1 已采纳 怎么不行,你在form1中声明一个form2的变量,比如 frm,在form1这个类中是属于这个类的变量, if (frm == null) frm = new Form2() else fr
- 2010-11-15 10:04xueyong4712816的博客 问答题沿用 S1 C#: Ch1: 1、= = 与Equals方法的区别? 对于值类型:由于值类型是存储在栈中,两者都是比较的是两个变量的在栈中的值是否相等。 对于引用类型:引用类型是在堆一个存储引用,指向堆中的某个具体...
- 没有解决我的问题, 去提问