出现模式弹出窗口时,如何暂停保存数据的处理?
当我单击该模式弹出窗口中的按钮时,保存数据的执行将继续进行。

我的Modal弹出窗口的作用就像一个消息框...

这是我的示例代码:

bool overlap= false;
foreach (ListItem item in chkMBoxEmployeeList.Items)
{
    if (overlap == true)
    {
      //Saving of data
    }
    else if (overlap == false)
    {
       ModalpopupExtender2.Show();
       //In this condition, I will pause the execution of saving the data
    }
}
//I used this after the ModalpopupExtender2.Show():
return;

//but I think, this will not be the answer, because my code will become very long if use that.  I will rewrite again my code in the button in modalpopup if I use that.

我应该使用线程吗? 线程在ASP.Net上工作吗?

最佳答案

您的保存过程在服务器上进行,但是模态对话框将显示在客户端上。您不能使服务器等待浏览器中的用户响应。相反,服务器处理必须结束并将修改后的页面发送到浏览器。现在,浏览器将再次提交所有数据以及确认信息。由于您使用的是ASP.NET WebForms,您会很幸运,因为它可以自动处理这种情况下的状态。

public void Save(bool confirmed)
{
    if (!confirmed && NeedsConfirmation())
    {
        ShowModalWindow();
        return;
    }

    // here perform the operation.
}

public void ButtonSave_Click(object sender, EventArgs e)
{
    // this is the button that is normally displayed on the form
    this.Save(false);
}

public void ButtonConfirm_Click(object sender, EventArgs e)
{
    // this button is located within the modal dialog - so it is not shown before that.
    this.Save(true);
}

关于c# - 模态弹出框显示时暂停保存数据的处理,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14518628/

10-11 02:03
查看更多