6
votes

Comment puis-je déclencher le bouton par défaut sur un formulaire sans cliquer dessus (WinForms)?

J'ai deux boîtes de texte. Un pour l'identifiant de connexion et un autre est pour le mot de passe. et il y a un bouton (soumettre). J'ai besoin d'un événement qui prend les valeurs d'identifiant de connexion et de mot de passe. I.e, sans cliquer sur la souris, j'ai besoin d'invoquer cet événement (juste en frappant "Entrée" sur le clavier). Quelqu'un peut-il m'aider!

Thanx à l'avance. Srini.


1 commentaires

Avez-vous essayé de capturer l'événement de clic et de filtrer la touche "Entrée"?


5 Réponses :


18
votes

Définissez le bouton pour être le bouton Accepter sur le formulaire. Vous pouvez le faire en définissant la propriété Forms "AccepterButton" pour être le bouton que vous souhaitez déclencher. Cela rendra une touche Entrée Appuyez sur le bouton.


4 commentaires

pouvez-vous m'aider où dois-je définir cela? Je suis nouveau à C #, n'hésitez pas si je demande à une naïve !!!


C'est une propriété sur la forme. Sélectionnez votre formulaire. Frapper f4. Trouvez la propriété "Acceptbutton", changez-la sur le bouton que vous souhaitez être le bouton par défaut. Le bouton doit être légèrement mis en surbrillance (avec une bordure bleue sur Windows XP) pour indiquer que le bouton par défaut est le bouton par défaut.


Selon mes connaissances, le formulaire fermera même si aucun nom d'utilisateur et mot de passe n'est entré et que vous affichez un message que NA Erreur s'est produite. Vous devrez ajouter du code pour former de la fermeture même pour ne pas fermer la forme d'erreur d'incase s'est produite.


Réglage du bouton lorsque l'accepter ne fermez pas le formulaire. Tout ce qu'il sera fait, c'est que les boutons cliquent sur l'événement à déclencher lorsque vous appuyez sur Entrée.



0
votes

Si vous ne voulez pas que le bouton soit le bouton par défaut, vous pouvez accrocher à la fois des événements Textboxes KeyPress vers le même gestionnaire, vérifiez si l'entrée a été enfoncée à l'aide de Keeventtargs.KeyCode.


0 commentaires

0
votes

Si vous devez pouvoir naviguer sur le formulaire sans la souris, vous voudrez vous assurer que votre onglet s'arrête est réglée correctement. Je définirais l'identifiant de connexion comme premier mot de passe comme deuxième, et votre bouton de soumission comme troisième. Ensuite, l'utilisateur peut naviguer facilement entre eux. IIRC, le comportement par défaut des boutons consiste à déclencher l'événement On_Click si la touche ENTER est enfoncée pendant que le bouton axé sur la mise au point.


2 commentaires

mec c'est ok mais quand je frappe entrer l'action, l'action shud invoke im Nean pour dire non en se concentrant sur Soumettre et quand je frappe entrer l'action shud invoke


et je voudrais vous demander PPL quel est l'équivalent E.KeyChart au bouton ENTER



4
votes

Simon P Stevens vous a donné la réponse la plus adéquate.

J'ajouterais simplement que vous avez également la possibilité de définir un formulaire Cancelbutton sur lequel un événement de clic serait déclenché lorsque vous appuyez sur la touche ESPASSE ESC .

Résumé rapide

Entrez -> Acceptbutton

ESC -> annuleButton


1 commentaires

merci mec.glad pour voir ces types de réponses ... Site très GUD!



1
votes

utiliser

BoutonName. PerformClick () ;


1 commentaires

Travaillé! et très simple