Coming up to speed on the MVP design pattern and I have a gap in my understanding. The consensus seems to be to design a 1:1 relationship between Presenter and View. This makes sense -- but how would this work when state must be passed from one view to the next.
For example, imagine the following two View application;
1) Login Form, 2) Data Entry Form.
Data Entry Form requires the credentials entered into the
Login Form View.
Does the application require another layer above the MVP that orchestrates the Views? A layer that would handle showing the next (or previous) View? And how should the separate Views share data? Should the the
Data Entry Form Presenter have access to the
Login Form Model?
Or does one Presenter create the next P/V in sequence. Meaning, after a user
successfully logs in, does
Login Form Presenter create the
Data Entry Form View and pass in the credentials?
My question is fundamentally the same one raise by Multi-page app using passive-view MVP with multiple presenters - what is the most appropriate way to handle page changes? but that question is unanswered.
If it matters, the project is a WinForm written in VB.Net.