Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[C#] MessageBox - YesNo - Fenster-X

Empfohlene Antworten

Veröffentlicht

Hallo,

mir ist gerade aufgefallen, dass die MessageBox leicht buggy ist *

Und zwar, bei Ja/Nein Fragen erscheint die MessageBox "standard-mäßig" mit einem Form-Close-X in der oberen rechten Ecke, die jedoch jegliche Verantwortung von sich weißt.

Ich denke man könnte die Mbx ableiten und ein Design ohne Standard-X festlegen, aber ich müsste gefühlte 2-300 Mbx'en ändern, und dafür fehlt mir Lust und Zeit.

Hat jemand eine bessere/schnellere Idee ?

Das "X" wirft übrigens auch keinen Event (glaube ich) auf dem man sich registrieren könnte, um dann wenigstens in ein paar FrageFenstern das X mit nem DialogResult.Cancel belegen zu können *schade*

Weiß vllt. wer ob dieser "design-bug" bals behoben wird ? (googeln nach MessageBox Yes No Cancel liefert natürlich nur einträge mit Yes/No/Cancel - Dialogresults.

So, genug gequatscht, ich hoffe der Post ist nicht so wirr und vllt. für jemanden, der gerade mit nem neuen Programm startet (wegen ableiten und so) hilfreich.

Gruß, Kosi

Hallo Kosi,

ich habe das jetzt mal probiert.

MessageBox.Show("Test", "Test", MessageBoxButtons.YesNo);

Da erscheint zwar das "x", ist aber ausgegraut. Lässt sich dadurch auch nicht bedienen.

Es wäre für mich als User auch nicht vorhersehbar, ob Ja oder Nein ausgewählt wird, wenn ich auf "Schließen" drücke.

Verstehe ich das richtig?

Du störst dich daran, dass deine MessageBox einen deaktivierten Schließen-Button hat, und willst statt dessen gar keinen? Das ist doch ein rein kosmetisches Problem.

Der Schließen-Button ist nur dann aktiv, wenn die MessageBox die Antwort 'Cancel' erlaubt, und tut dann dasselbe wie der Cancel-Button.

Nene, bei mir ist das X nicht Ausgegraut oO

Ich kann klickern wie ich möchte, die MessageBox wirft kein Event (mit nem Dialogresult.Cancel könnte ich ja leben, und n ausgegrautes Fenster-schließen-X wäre auch okay, aber so, dass man es bedienen kann, es aber nichts tut machts keinen Sinn)

Vielleicht liegts an .Net 2.0, win-Vista oder sonst was...

Ist ja auch nicht tragisch, aber auch nicht im sinne des erfinders, denke ich.

Der Schließen-Button ist nur dann aktiv, wenn die MessageBox die Antwort 'Cancel' erlaubt, und tut dann dasselbe wie der Cancel-Button.

Nope, bei mir nicht^^

Vielleicht hat sich ja diese Kleinigkeit schon mit .Net 3.x erledigt, werde das mal gegenprüfen.

Edit:

Hebe es gerade mit .Net 3.5 versucht

(mbox.Show("test","test",MessageboxButtons.YesNo);)

Auch das Schließen-X nicht ausgegraut, klickbar ohne funktionalität... Vielleicht liegts an Vista, wer weiß.

Edit2:

Gerade auf XP und Win7 versucht, ergebniss:

Win7 ausgegraut, XP rot (wie Vista), liegt wohl am OS^^

Bearbeitet von Kosinator

  • 1 Jahr später...

Ich habe das Problem, dass bei

DialogResult res = MessageBox.Show("Die Datenbanken müssen konvertiert werden.\n\rDies kann einige Minuten dauern.", "DB-Update", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);

Auch das X angezeigt wird und es auch die Box schließt... Nur leider mit res = OK :(

Das ist meiner Meinung nach ein Bug da ich nur den Hinweis geben will und keine Möglichkeit zum Abbruch. Der User meint aber wenn er das X drückt den vorgang abbrechen zu können aber weit verfehlt und ich bekomme das über res noch nicht mal mit.

Verstehe ich nicht :D

Die einzige "legale Art", den Dialog zu verlassen besteht im OK des Benutzers

MessageBoxButtons.OK
. Sollte er dann den Dialog verlassen, indem er das Fenster schließt, sollte das doch auch OK sein, oder? Oder habe ich da das "Achtung Sarkasmus"-Schild überfahren?

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.