0

我遇到了模态弹出扩展器的问题。我正在做的是将它分配给一个“隐藏”按钮,并在另一个按钮的单击方法上,我正在调用 modal.Show(); 当后面的任务是什么都不做,或者小操作时,它工作得很好。问题是当我调用存储过程时,它根本不显示模式。我想要做的是阻止用户点击并通知用户一个进程正在运行(即他们点击一个按钮,需要几秒钟来提取他们请求的所有数据)。

有没有人遇到过这个?或者有什么诀窍吗?

提前感谢您的帮助!

编辑:

下面是一些示例代码(根据要求):

.aspx 页面:

   <asp:Button ID="btnStep1Hidden" runat="server" style="visibility: hidden;" />
   <asp:Button ID="Step1" Text="Pull ID Cards" OnClick="Step1_Click" UseSubmitBehavior="false" runat="server" CssClass="button_menu" />
   <ajax:ModalPopupExtender ID="mpeStep1" runat="server" PopupControlID="panProgress" TargetControlID="btnStep1Hidden" BackgroundCssClass="modalBackground"></ajax:ModalPopupExtender>

.aspx.cs 代码:

    mpeStep1.Show();

    try
    {
        SqlCommand cmd = APP.DataManager.GetConnection().CreateCommand();
        cmd.CommandText = "EXEC [dbo].[sp_Populate_Initial_DataSet_New]"            cmd.Connection.Open();
        cmd.ExecuteNonQuery();
        cmd.Connection.Close();
    }
    catch
    {
        //Log, etc here
    }

该存储过程没有 .DataBinds() 。它只是填充一个表,其他进程将从中显示数据。

4

1 回答 1

0

模态弹出窗口是否会说“请稍候,正在处理......”?您需要在客户端显示它而不是使用 mpeStep1.Show() 否则在服务器端的东西完成之前它不会显示。

你在使用 ASP.NET Ajax 吗?如果是这样,UpdateProgress 控件是否不适合该任务? http://msdn.microsoft.com/en-us/library/bb386421.aspx

于 2009-08-19T14:35:32.587 回答