2009-09-23 10 views
0

J'ai parcouru les questions sur le site, mais je n'ai pas encore trouvé de réponse décente.Interaction avec les contrôles utilisateur à travers les événements

Mon problème est que ma classe de formulaire principale est encombrée en raison de tous les événements et méthodes. J'ai décidé de décomposer le formulaire en contrôles utilisateur. Malheureusement, j'ai du mal à accéder aux informations provenant d'autres contrôles utilisateur.

Par exemple, j'ai un contrôle utilisateur qui imprime certaines informations. Mais certaines de ces informations sont dans un autre contrôle utilisateur. Comment puis-je récupérer ces données?

Une solution que j'ai lue était de transmettre un délégué au contrôle Print User. Le délégué contiendra une méthode du contrôle d'utilisateur d'informations qui a renvoyé les données du contrôle. Donc, chaque fois que l'événement print est appelé, j'appelle cette fonction.

L'autre solution que j'avais était d'attacher un événement à l'information Contrôle de l'utilisateur. Chaque fois que l'information dans le contrôle de l'utilisateur a changé, je voudrais mettre à jour mes variables d'impression.

Répondre

1

Pourquoi avez-vous besoin d'utiliser des événements pour cela? Si le contrôle X a besoin d'informations provenant du contrôle Y, alors passez le contrôle Y dans le constructeur du contrôle X.