2008-11-22 10 views
0

J'essaie de mieux utiliser les modèles de style MVC/MVP avec mes applications WinForm et je me bats avec quelque chose que peut-être quelqu'un ici avec plus d'expérience peut m'aider.Comment passer une référence d'un objet à un contrôleur dans MVC?

Ci-dessous est ma mise en page du projet de base:
alt text

La classe G2.cs gère le fonctionnement de différents fils et comprend un Start/Stop et d'autres différentes méthodes impliquées dans ces discussions. C'est ma classe "principale" je suppose. Il contient également la boucle principale pour mon application.

Mon interface graphique est composée de 3 formulaires jusqu'à présent et d'un contrôleur associé pour chacun. Le MainForm a des boutons Démarrer/Arrêter qui doivent appeler des méthodes sur ma classe G2 ainsi que d'éventuels futurs formulaires.

Quelle serait la bonne façon de transmettre une référence de ma classe G2 à tous les contrôleurs de la vue qui en ont besoin? Ai-je besoin de passer la référence G2 au formulaire lorsque je le crée et le formulaire à mon tour le passe à mes contrôleurs ou ... n'est-ce pas une bonne façon de gérer les choses?

Aussi, ai-je raison de dire que c'est la responsabilité de Views de créer une instance de son contrôleur et qu'il "possède" le contrôleur?

Répondre

1

Si G2 est la classe principale du programme, et existe seulement dans une instance, j'utiliserais le modèle singleton sur cette classe - pas besoin de passer des références.

Questions connexes