黑马程序员技术交流社区

标题: C#WinForm程序中,如何判断一个窗体是否已经打开? [打印本页]

作者: 化宝峰    时间: 2012-8-28 15:10
标题: C#WinForm程序中,如何判断一个窗体是否已经打开?
是这样的,自定义了一个窗体类(A),窗体类(B)。B中定义了A的对象作为B的字段。
在B的一个窗体对象(C)的事件处理函数中,需要判断窗体类A是否有对象存在。
如果存在,则更新A的UI属性,如果不存在,就不进行处理。
窗体有什么相关的属性来判断是否存在?还是需要自己去想办法去判断?请指点!
不牵扯跨线程修改UI,我已经使用了
System.Windows.Forms.Control.CheckForIllegalCrossThreadCalls = false;
作者: 许庭洲    时间: 2012-8-28 15:35
private Form_num  frm1 = null;
private void CreateForm()
{
       if (frm1  == null)
       {
             frm1  = new Form_num ();
             frm1 .Show();
       }      
}
作者: 化宝峰    时间: 2012-8-28 15:53
许庭洲 发表于 2012-8-28 15:35
private Form_num  frm1 = null;
private void CreateForm()
{

谢谢,不过不是我想要的答案!还是谢谢了!
作者: 化宝峰    时间: 2012-8-28 16:25
许庭洲 发表于 2012-8-28 15:35
private Form_num  frm1 = null;
private void CreateForm()
{

谢谢,刚才试了下,可以,在B类窗体的Load事件中对A字段进行赋值,在Close事件中将A字段赋值为null。
在B的窗体事件中,就只需要判断A字段的变量是否为null,可以实现我想要的,谢谢了哈,刚才没理解透!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2