J'ai un bouton qui, lorsque je clique sur un bouton, affiche des informations, puis-je déclencher manuellement l'événement cliqué par un bouton dans le code? J'ai besoin de cela pour que lorsque je clique sur un autre bouton, il déclenche automatiquement cet événement.Déclenchement manuel des événements C#
Répondre
Un bon moyen serait de ne pas avoir de code (sauf un appel méthode/fonction) dans un gestionnaire d'événements. cela permettrait de l'appeler depuis n'importe quel endroit de votre programme.
En outre, jetez un oeil à des modèles comme MVC ou MVP. Ils vous aideront à réaliser cela. – Matthias
Déplacez le code répondant au clic de bouton dans une fonction et appelez cette fonction à la fois dans le gestionnaire d'événements et dans l'autre.
Vous pouvez le faire comme ça.
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show("button1");
}
private void button2_Click(object sender, EventArgs e)
{
MessageBox.Show("button2");
button1_Click(sender, e);
}
Il y a deux façons de le faire,
1 # - = Déplacer le code que vous avez écrit dans le bouton cliquez sur l'événement à une autre fonction et appeler cette fonction dans ce bouton événement click et autre bouton événement click aussi. 2 # - Pour l'événement de deuxième clic de clic, spécifiez le premier événement de clic de bouton comme gestionnaire d'événements.
3 # - appelez le gestionnaire d'événements de button1 à l'intérieur de button2.
private void button2_Click(object sender, EventArgs e)
{
button1_Click(sender, e);
}
Je vous conseille d'aller pour le second, si vous avez le même ensemble de fonctionnalités pour les deux boutons.
le problème est que je fais des appels asynchrones à quelques fonctions et cet événement que je veux déclencher devrait se produire à la fin de celui-ci afin que je puisse spécifier le gestionnaire d'événements pour le second bouton au premier bouton. –
Si vous ne se soucient pas de l'expéditeur ou EventArgs, vous pouvez aussi utiliser simplement
Button1_Click(null, new EventArgs());
Vous pouvez utiliser Button.PerformClick()
- 1. Jquery datepicker - déclenchement manuel
- 2. Déclenchement manuel d'un document onready
- 3. Déclenchement manuel de jqxGrid Icône de chargement
- 4. Gestion dynamique des événements - pas de déclenchement
- 5. FOSUser Bundle confirmation de déclenchement manuel email
- 6. Déclenchement manuel de l'événement de LocationListener
- 7. Déclenchement et liaison à des événements personnalisés?
- 8. réduire les événements de déclenchement
- 9. plugin pipeline de livraison Jenkins, comment sauter déclenchement manuel
- 10. Déclenchement manuel de l'événement dans JS Helper CakePHP
- 11. plugin jQuery Tipsy - déclenchement manuel ne fonctionne pas
- 12. Déclenchement indésirable des événements de zone de texte
- 13. Déclenchement des événements Excel Control à la fermeture de l'application
- 14. Lors du déclenchement manuel d'un événement KVO, le dictionnaire des modifications peut-il être modifié?
- 15. Déclenchement temporel en C
- 16. Gestion des événements/interruptions personnalisés en C++
- 17. Transférer des événements en C#
- 18. C# des événements de collecte
- 19. Gestion des événements filetés (C#)
- 20. Réinitialisation des événements filetés - C++
- 21. gestion des événements en C++
- 22. Gestion des événements en C#
- 23. Affichage manuel des validateurs de champ (ASP.NET/C#)
- 24. JQueryUI Saisie semi-automatique - Déclenchement sur tous les événements
- 25. Script de déclenchement sur certains événements de bibliothèque de documents?
- 26. Rendu manuel des glyphes SVG
- 27. C Clavier SDL Événements SDL_KEYUP Déclenchement lorsque la touche est désactivée
- 28. Déclenchement manuel de l'option "pile" sur une interface utilisateur JQuery dragable
- 29. Pages de manuel C++ sous Ubuntu
- 30. Ajout manuel de gestionnaires d'événements de page dans ASP.Net C#
Pourquoi ne pas appeler juste l'autre eventhandler au lieu de déclencher l'événement lui-même? Ou vous abonner le même eventhandler aux deux événements? – CodesInChaos