I'm working with the Passive View pattern. The user clicks a new account button. The view delegates responsibility to the presenter using parameterless method calls.
The problem is there are multiple account types so the user needs to pick which one they want to create. How do I resolve this?
- Create a new form from the view, get the needed information and expose it as a property so the presenter can retrieve it. (This ignores the notion that the view shouldn't have any logic in it)
- Create and use the new form from the presenter. (This ties the presenter directly to a form, ignoring the entire point of MVP)
- Create the new form somewhere else and pass it in as a constructor argument to the presenter... or view.
- Forget it and add a new button for each account type. (There are a number of account types and this will clutter the UI but so be it.)
- I'm going about this the wrong way and need to rethink my design. (If this is the case, an nudge in the the right direction would be appreciated.)