I'm currently at the design phase of my program (hence no code). It will be written in WPF in C# using MVVM principles.
I'm going to have a multifunctional Drag & Drop control, that will act similairly to a Facebook's Post on the Wall.
To make this clear, imagine it could be a calendar event, an important note, a product update etc.
That means they will differ in models that they will be based on.
What do you think would be the most SOLID approach to building such a control? What I came up with:
- Have a single control object, that based on the "type" that it is created as, inherits different models. (though I'm not entirely sure how I will manage to do that yet.
- Have different controls for each "type" that all inherit from a base control class and extend the basic functionality.
- Any other solution, that could be even better?