2009-07-08 5 views
6

Ich habe zwei Textfelder. eine für die Login-ID und eine weitere für das Passwort. und es gibt einen Knopf (submit). Ich brauche ein Ereignis, das die Werte von Login-ID und Passwort annimmt. Das heißt, ohne dass ich mit der Maus klicken muss, muss ich dieses Ereignis aufrufen (indem ich auf der Tastatur die Eingabetaste drücke). Kann mir jemand helfen!Wie kann ich die Standardschaltfläche in einem Formular auslösen, ohne darauf zu klicken (winforms)?

Danke im Voraus. srini.

+0

Haben Sie versucht, das Klickereignis zu erfassen und nach der "Enter" -Taste zu filtern? – rifferte

Antwort

4

Simon P Stevens gab Ihnen die angemessenste Antwort.

Ich möchte nur hinzufügen, dass Sie auch die Möglichkeit, eines Formulars CancelButton einstellen, auf dem ein Click-Ereignis ausgelöst werden würde, wenn Sie die Escape-Taste ESC Taste.

Quick Zusammenfassung

Geben Sie ->AcceptButton

Esc ->CancelButton

+0

Danke dude.glad, um diese Art von Antworten zu sehen ... sehr gud Site! – srinivas

18

Legen Sie fest, dass die Schaltfläche die Schaltfläche zum Akzeptieren des Formulars ist. Sie können dies tun, indem Sie die Forms "AcceptButton" -Eigenschaft als die Schaltfläche festlegen, die Sie auslösen möchten. Dadurch wird eine Eingabetaste gedrückt, um die Taste zu drücken.

+0

kannst du mir helfen, wo ich das einstellen soll. ich bin neu zu C#, zögern Sie nicht, wenn ich eine naive frage !!! – srinivas

+0

Es ist eine Eigenschaft auf dem Formular. Wählen Sie Ihr Formular aus. Drücke F4. Suchen Sie nach der Eigenschaft "AcceptButton", und ändern Sie sie in die Schaltfläche, die die Standardschaltfläche sein soll. Die Schaltfläche sollte leicht hervorgehoben werden (mit einem blauen Rand an Windows XP), um anzuzeigen, dass es sich um die Standardschaltfläche handelt. –

+0

Nach meinem Wissen .. mit dem "AcceptButton", wird das Formular geschlossen, auch wenn kein Benutzername und Passwort eingegeben wurde und Sie eine Meldung anzeigen, dass ein Fehler aufgetreten ist. Sie müssen etwas Code hinzufügen, um das Schließen zu schließen, selbst um das Formular nicht zu schließen, wenn ein Fehler aufgetreten ist. –

0

Wenn Sie nicht möchten, dass die Schaltfläche die Standardeinstellung ist, können Sie beide TextBoxes KeyPress-Ereignisse mit demselben Handler verknüpfen und dann prüfen, ob Enter mit KeyEventArgs.KeyCode gedrückt wurde.

0

Wenn Sie in der Lage sind, ohne Maus durch das Formular zu navigieren, sollten Sie sicherstellen, dass die Tabstopps richtig eingestellt sind. Ich würde Login Id als erste, Passwort als zweite, und Ihre Schaltfläche als dritte. Dann kann der Benutzer leicht zwischen ihnen navigieren. IIRC, das Standardverhalten von Schaltflächen besteht darin, das On_Click-Ereignis auszulösen, wenn die Eingabetaste gedrückt wird, während die Schaltfläche den Fokus hat.

+0

Kumpel das ist ok, aber wenn ich drücke die Aktion Shud aufrufen imean zu sagen nicht durch Fokussierung auf submit und wenn ich drücke geben Sie die Aktion shud aufrufen – srinivas

+0

und ich würde gerne fragen, was ist die e.KeyChar eqivalent zum eingeben Knopf – srinivas

1

Verwendung

Button. PerformClick();

+0

Arbeitete! und sehr einfach –

Verwandte Themen