Est-il possible de déclencher un événement de clic à partir d'un autre formulaire?
J'ai besoin d'exécuter le code d'un bouton qui est sur une autre forme. est-il possible de le faire à partir d'un autre formulaire? si vous dites que c'est possible en la déclarant en public, alors:
- comment dois-je déclarer un contrôle public?
- comment puis-je passer à la correcte des événements dans
button_click
? elle prend deux paramètres - comment puis-je passer,?
OriginalL'auteur l--''''''---------'''''''''''' | 2010-11-05
Vous devez vous connecter pour publier un commentaire.
Il est possible de faire un contrôle dans un
Form
public
, mais pas recommandé, vous pouvez effectuer les opérations suivantes:1) Déclarer un nouvel événement dans le premier formulaire (form1) ButtonFirstFormClicked
et déclencher cet événement dans le Bouton.Cliquez sur gestionnaire d'événement
2) Dans le second formulaire (form2) s'abonner à l'événement
Bonne chance!
OriginalL'auteur Homam
Pourquoi ne pas créer une méthode dans une classe partagée que les deux
click
événements exécuter.je vous respecte beaucoup parce que contrairement à d'autres de hauts rouleaux qui, comme vous, ils marquent leurs propres réponses en place de sorte qu'ils n'ont pas les négatifs
OriginalL'auteur Dustin Laine
Vous pouvez utiliser à l'intérieur comme votre modificateur, de sorte que vous pouvez facilement accéder à l'événement click.
par exemple vous avez un événement de clic dans form1.
au lieu de le rendre privé, public ou protégé. mettre internes de cette façon
vous pouvez facilement accéder à la méthode dans d'autres classes. Mais le interne modificateur n'est accessible au sein de l'
package courant.
Form1
Form2
voir mon edit au dessus, je l'ai fait plusieurs fois et je pense que son coffre-fort pour une utilisation interne modificateur. je pense que vous pouvez le faire aussi à l'aide publique modificateur.
OriginalL'auteur Rye
Vous pouvez faire la commande publique en changeant les "Modificateurs" pseudo-propriété dans le concepteur de formulaire.
Une fois que le bouton est public, vous pouvez exécuter ses
Click
événement en appelant lePerformClick
méthode, par exempleform1.button1.PerformClick()
. Vous n'avez pas à appeler le gestionnaire d'événement directement.Cependant, il pourrait être une meilleure idée de créer une méthode publique comme Dustin Laine suggère.
OriginalL'auteur Jesse McGrew
Dans la forme où le code est (firstForm) vous devrez effectuer la procédure publique et disponible à la forme secondaire où le bouton secondaire est (btnMyButton). Une fois que vous avez accompli ce que vous pouvez brancher jusqu'à l'événement click virage du secondaire bouton pour le code dans le 1er formulaire comme suit.
Secondairement, comme indiqué ci-dessus par Dustin vous pourriez opter pour déplacer ce code dans une classe distincte et puis tout simplement la référence de la méthode handler avec autant d'évènements que vous avez besoin.
De toute façon va fonctionner, mais je suis d'accord que si vous voulez suivre la bonne conception, vous devriez avoir une séparation des préoccupations, tant qu'il se rapporte à la logique métier (code) et de la couche de présentation (c'est à dire des formes avec des boutons)
//bouton 2ème forme
Espère que cette aide,
Profitez-en!
OriginalL'auteur Doug