我目前在这里的表格有问题。
每当某个进程正在进行时,我都会弹出一个进度对话框,但是当我单击进度对话框后面的窗口/表单的“X”按钮时,它将被关闭并取消正在进行的操作。
我怎样才能防止这种情况发生?我是否必须禁用进度条后面的整个表单?我该怎么做?
Form.ShowDialog()
使用而不是启动表单Form.Show()
。这将禁用后台表单(实际上是进程中的任何其他表单),直到您显示的表单关闭。作为一个额外的好处,您可以让表单返回一个值(例如,取消、确定、是、否等),以防需要采取任何行动。
实际上不是您可能期望的答案,但您可以处理Form.FormClosing
事件,设置e.Cancel = True
这不会禁用关闭按钮,但会使您的表单在这种情况下保持打开状态。
查看更多信息:http: //msdn.microsoft.com/en-us/library/system.windows.forms.form.formclosing.aspx
您应该将进度条显示为模态对话框,请检查此答案是否适合您的javasript,例如 winform 上的模型窗口
HTH。