已有57人关注
将两个窗体进行切换的时候,为什么都会有新的窗体产生?
发表在C#图书答疑 2016-06-02
是否精华
版块置顶:
我用C#windows应用设计了两个窗体在一个工程中,为什么在通过A窗体调用B窗体的时候,会有新的B窗体产生,B窗体调用A窗体的时候,有新的A窗体产生。我想实现窗体切换的时候,不产生新的窗体,原窗体上的数据还能保留。我参考的代码如下:

this.Visible = false;
deviceform dform = new deviceform();
dform.Visible=true;


testform tform= new testform();
tform.Show();
this.Visible=false;
分享到:
精彩评论 3
小科_mrkj
学分:43 LV2
2016-06-02
沙发
读者朋友:
   您好,如果不用new新创建对象,就不会新产生新窗体,产生新窗体是因为你把创建窗体对象的代码写在相应方法或事件中了。
远东_mrkj
学分:0 LV1
2016-06-03
板凳
[FIELDSET][LEGEND]引自:1楼[/LEGEND]
读者朋友:
   您好,如果不用new新创建对象,就不会新产生新窗体,产生新窗体是因为你把创建窗体对象的代码写在相应方法或事件中了。
[/FIELDSET]

回复:
  你好,可是如果不新建的话,我就不能调用窗体的show函数。我创建了两个窗体,一个叫做deviceform,一个叫做testform,这两个都是类,不能去调用show方法,所以我只能用了new命令,如果不用new,该如何去调用这些函数呢?比如show,visible等,谢谢。
小科_mrkj
学分:43 LV2
2016-06-03
地板
[FIELDSET][LEGEND]引自:2楼[/LEGEND]
[FIELDSET][LEGEND]引自:1楼[/LEGEND]
读者朋友:
   您好,如果不用new新创建对象,就不会新产生新窗体,产生新窗体是因为你把创建窗体对象的代码写在相应方法或事件中了。
[/FIELDSET]

回复:
  你好,可是如果不新建的话,我就不能调用窗体的show函数。我创建了两个窗体,一个叫做deviceform,一个叫做testform,这两个都是类,不能去调用show方法,所以我只能用了new命令,如果不用new,该如何去调用这些函数呢?比如show,visible等,谢谢。
[/FIELDSET]

回复:只能在Form2中创建Form1的全局对象,这样就可以不再产生Form1窗体,但不能再Form1中创建Form2的全局对象,因为Form1是启动窗体,这是还没有Form2.
  正常是不推荐这种方法的。
首页上一页 1 下一页尾页 3 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照