I am looking for advice on how to limit the required knowledge to get an extension to work with a host.
I have a Silverlight application which has a Toolbar. The toolbar contains various controls. Each control is a MEF import. It is possible that some of them may be provided by the users themselves (similar to adding a button to Visual Studio
To give further details on my specific question, I have a button on the toolbar that is a toggle button. When the user clicks it, interacting with the main application is slightly different. To be even more specific, imagine that the application
is something like Expression Design and the button in question is the Pan (hand icon) button. Click it, and the cursor changes to a hand when over the artboard and pressing the moust button lets you drag it around. This is the basic functionality
If the button was hardcoded into the toolbar (not a MEF plugin) this would be easy. Being a plugin doesn't make it too difficult either, however, it seems that the artboard and the rest of the application would need to have intimate knowledge of the
plugins existence. I need to try and avoid this the best I can. I don't want to hard code things in to the application everytime someone wants to add a new button. I am looking for advice on the best way to approach this.