【发布时间】:2011-05-18 05:57:15
【问题描述】:
我正在开发一个模块,如果 2 分钟不活动,该模块将注销我的应用程序。 2 分钟后,我将表单的可见属性设置为 false 并显示注销屏幕。当用户再次登录时,我只需将最后一个活动表单的可见属性设置为 true。
现在我正在显示一个表单 A,并且此表单中有一个按钮,它将显示另一个表单 B 作为对话框。
当需要注销时,我只需将两个表单(A,B)的可见属性设置为 false。当用户再次登录时,我将此属性设置为 true。
但问题是表单 B 现在没有显示为对话框。
另外,如果在我的登录代码中,我将表单 B 设置为
form b.ShowDialog();
它显示为一个对话框,但现在输入到此表单文本字段中的数据(在注销之前)被清除。
有人可以解释这种行为的原因吗?
我想将表单 B 显示为对话框,并且还想维护表单中字段的状态。
> 编辑 此代码隐藏了表单。
if (Program.issueDepositForm != null)//form B static reference Checking if form B is not null
{
Program.issueDepositForm.Visible = false; //Form B
Program.saleproduct.Visible = false;//Form A f static refrence
}
这段代码再次显示它们
Program.saleproduct.Visible = true; //Form Astatic refrence
if (Program.issueDepositForm.Visible == false) //Form B
{
Program.issueDepositForm.ShowDialog(); //Form B
//Program.issueDepositForm.Visible = true;
}
【问题讨论】:
-
愿意分享一些代码吗?
-
也许你应该发布与问题有关的整个代码。你如何显示第二个对话框,你如何隐藏它以及你如何再次显示
-
设置 visible=false;对话形式的属性改变它的对话行为?
标签: c# winforms modal-dialog