Model-View-Presenter en WinForms

Je suis en train de mettre en œuvre le MVP de la méthode pour la première fois, à l'aide de WinForms.

Je suis en train d'essayer de comprendre la fonction de chaque couche.

Dans mon programme j'ai une interface graphique bouton qui lorsqu'il est cliqué sur s'ouvre un openfiledialog fenêtre.

Donc, à l'aide de MVP, l'interface graphique gère l'événement click du bouton, puis appelle le présentateur.openfile();

Au sein de l'animateur.openfile(), qui devrait ensuite déléguer l'ouverture de ce fichier de la couche du modèle, ou qu'il n'existe pas de données ou de la logique de processus, devrait-il simplement d'agir sur la demande et ouvrir le openfiledialog fenêtre?

Mise à jour: j'ai décidé d'offrir une prime que j'ai besoin de plus d'assistance sur ce point, et de préférence adapté à mes points spécifiques ci-dessous, de sorte que j'ai contexte.

Bon, après lecture sur MVP, j'ai décidé de mettre en œuvre le Passif de la Vue. Effectivement je vais avoir un tas de contrôles sur une Winform qui sera manipulé par un Présentateur et puis les tâches déléguées au Modèle(s). Mes points spécifiques sont ci-dessous:

  1. Lorsque le winform des charges, il doit obtenir un treeview. Ai-je raison de penser que la vue doit donc faire appel d'une méthode telle que: présentateur.gettree(), ce sera à son tour déléguer au modèle, ce qui permettra d'obtenir les données pour le treeview, de le créer et de le configurer, de retour pour le présentateur, qui à son tour va passer à la vue qui sera alors tout simplement céder à, disons, un panneau?
  2. Serait-ce le même pour toutes les données de contrôle sur la Winform, comme j'ai aussi un datagridview?
  3. Mon Application, a un certain nombre de classes du modèle avec la même assemblée. Il prend également en charge une architecture de plugin avec les plugins qui doivent être chargés au démarrage. Serait le point de vue simplement appeler un présentateur de la méthode, qui à son tour appel à une méthode de chargement de plugins et d'afficher les informations dans la vue? Le niveau serait alors de contrôler le plugin références. Serait la vue de contenir des références ou le présentateur?
  4. Ai-je raison de penser que la vue doit gérer chaque chose à propos de la présentation, de treeview nœud de couleur, à la grille de données de taille, etc?

Je pense qu'ils sont mes principales préoccupations et, si je comprends comment le flux doit être, pour ces je pense que je vais être d'accord.

Ce lien lostechies.com/derekgreer/2008/11/23/... explique certains des styles de titre de MVP. Il pourrait s'avérer utile en plus de Johann excellente réponse.

OriginalL'auteur Darren Young | 2011-01-25