Ich habe ein Problem mit einem modalen Popup-Extender. Was ich tun ist, es zu einem "versteckten" Button und auf die Klick-Methode einer anderen Taste zuweisen, ich rufe modal.Show(); Wenn die Aufgabe dahinter nichts oder kleine Operationen sind, funktioniert es gut. Das Problem ist, wenn ich eine gespeicherte Prozedur anrufe, wird das Modal überhaupt nicht angezeigt. Ich versuche Benutzerklicks zu verhindern und benachrichtige den Benutzer, dass ein Prozess ausgeführt wird (dh, er klickt auf eine Schaltfläche und benötigt einige Sekunden, um alle angeforderten Daten abzurufen).ASP.NET ModalPopupExtender Problem
Hat jemand schon mal davor gelitten? Oder hast du irgendwelche Tipps?
Vielen Dank im Voraus für jede Hilfe!
EDIT:
Heres einige Codebeispiele (wie gewünscht):
Die ASPX-Seite:
<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>
Der aspx.cs Code:
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
}
Es sind keine .DataBinds() für diese gespeicherte Prozedur. Es füllt lediglich eine Tabelle, aus der andere Prozesse die Daten anzeigen.
Wirklich kann Ihnen nicht helfen, ohne etwas Code zu sehen. – womp
Einverstanden, ein Codebeispiel wird benötigt. Aus der vagen Beschreibung würde ich meinen, dass, wenn Sie eine gespeicherte Prozedur aufrufen, sie wirft, früh zurückkehrt oder aus irgendeinem anderen Grund nicht in die Zeile kommt, in der modal.Show() ausgeführt wird. Oder vielleicht machst du irgendwo eine Datenind(), die die Sichtbarkeit deines Popups zurücksetzt. Aber wir müssen etwas Code sehen, um es einzugrenzen. – Sterno