Hallo zusammen,
habe ein Problem mit einem Dialog-Fenster:
In diesem habe ich
Die Eingabe von Buchstaben fange ich mit einer CellValidation ab, die direkt bei der Eingabe "zuschlägt", was auch alles funktioniert.
Die Prüfung der Zahl möchte ich erst auslösen, wenn der User den OK-Button anklickt. Das Fenster soll erst schliessen, wenn die o.g. Bedingung erfüllt ist.
Leider habe ich für dieses Problem noch keine saubere Lösung gefunden.
Zum Beispiel wollte ich den DialogResult des OK-Buttons erst auf "OK" ändern, wenn die Bedingung erfüllt ist, dies bewirkt aber, daß ich den Button 2x anklicken muß, um das Fenster zu schließen.
Hat jemand eine Tipp für mich?
Vielen Dank und viele Grüße
Frank
Das Setzen von DialogResult = DialogResult.OK
sollte den Dialog dann (eigentlich) schließen.
Oder wie sieht deine Button-OK-Methode aus?
Hallo zusammen,
Zum Beispiel wollte ich den DialogResult des OK-Buttons erst auf "OK" ändern, wenn die Bedingung erfüllt ist, dies bewirkt aber, daß ich den Button 2x anklicken muß, um das Fenster zu schließen.
void ButtonOK_Click(...)
{
if (IsInputOK())
{
DialogResult = OK
}
else
{
//Zeige Fehler irgendwie an
}
}
?
Gelöst!
Allerdings: Das ganze Problem war, daß ich die ganze Zeit anstatt
DialogResult = DialogResult.OK
(was ja dann eigentlich this.DialogResult = DialogResult.OK entspricht)
die Zeile
btn_OK.DialogResult = DialogResult.OK
programmiert hatte.
Hab immer gedacht, der Button gibt den "OK" zurück.
Anscheindend muß aber die Form "OK" zurückgeben.
Bitte keine Full Quotes [Hinweis] Wie poste ich richtig?