我有一个带有取消按钮的模式对话框,仅当用户单击按钮时才会弹出。弹出模态对话框后,我想开始一个监视外部事件的长过程。如果事件发生,则对话框将自动关闭。用户可以通过单击取消按钮来取消监控过程。
我将流程开始分配给 Shown 事件
private void ProceedForm_Shown(object sender, System.EventArgs e)
{
controller.StartSwiping();
}
过程本身就是一个循环
public void StartSwiping()
{
Status status;
do
{
status = CallForFeedback();
} while (status == Status.Pending);
form.DialogResult = DialogResult.OK;
form.Close();
}
该过程开始正常,但没有弹出对话框,因此用户不能取消该过程。我还尝试将开始分配给 Load 事件,但没有任何改变。有什么方法可以显示对话框,然后开始该过程?
谢谢