Announcement

Collapse
No announcement yet.

Messagebox in ASP.Net

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Messagebox in ASP.Net

    Ich bin dabei eine Kundendatenbank über ASP.Net zu schreiben. Dabei sollen die Datensätze natürlich auch bearbeitet, erstellt und gelöscht werden.

    Als Abfrage möchte ich eine MessageBox benutzen. Jedoch zeigt er mir diesen Fehler an:

    <B>"Das Anzeigen eines modalen Dialogfelds oder eines Formulars ist nicht zulässig, wenn die Anwendung nicht im UserInteractive-Modus ausgeführt wird. Geben Sie das Format ServiceNotification oder DefaultDesktopOnly an, um Benachrichtigungen einer Dienstanwendung anzuzeigen."</B>

    Kann mir einer einen Tip geben wie ich die ganze Sache am besten anstelle?

    Ich hab es schon mit dem JScript Code confirm versucht, konnte jedoch den Rückgabewert nicht im CodeBehind abfangen. Vielleicht hat ja jemand noch dazu eine Lösung?

    Vielen Dank schon mal im vorraus!

  • #2
    Hallo,

    das Löschen eines Datensatzes im DataGrid könnte über den folgenden Weg über eine MessageBox abgefangen werden:
    <br>
    - DELETE-Button wird im Beispiel in der 3. Spalte des DataGrid angezeigt <br>
    - DataGrid-Ereignis <b>ItemCreated</b> wird genutzt, um ein clientseitiges Script mit dem DELETE-Button zu verbinden <br>
    - Wenn der Anwender die Sicherheitsabfrage "Sind Sie sicher" mit dem Nein-Button quittiert, wird der Click-Vorgang vom Browser abgebrochen, so dass kein PostBack zum ASP.NET-Server erfolgt.
    <pre>
    Private Sub DataGrid1_ItemCreated(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) _
    Handles DataGrid1.ItemCreated
    If (e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem) Then
    Dim aBtn As WebControl = DirectCast(e.Item.Cells(3).Controls(0), WebControl)
    aBtn.Attributes.Add("onclick", "return confirm ('Sind Sie sicher?')")
    End If
    End Sub
    </pre&gt

    Comment


    • #3
      <font face="verdana" size=2>
      Hallo NG,<br><br>

      hier ist wichtig zu verstehen, wo welcher Code ausgeführt wird! Eine Messagebox (ob msgbox aus vbscript oder confirm aus javascript) wird immer clientseitig ausgeführt, der Server bekommt nicht davon mit. Der Rückgabewart muss also clientseitig ausgewertet werden oder (wenn wirklich nötig) in irgend einer Form (viewstate, hidden Textfeld o. ä.) an den Server transportiert werden (dann muss natürlich ein Postback durchgeführt werden, damit der Server überhaupt etwas von der Veränderung mitbekommt!)
      <br><br>

      <b>Gruß<br>
      Thomas</b&gt

      Comment

      Working...
      X