Well, never being one to be easily satisfied, I was quite happy to find Phil Wright's excellent article on docking controls. However, I of course wanted more. I wanted a control that would behave like a container in the design environment, and would allow me to tear it away from the sides of its container and drop it wherever I wanted it.
So, using Phil's work as a base (thanks, Phil!) I extended his control to give it a little more design flexibility and a way to move it around more like a Visual Studio tool window.
Using the control is simple. Just copy the .cs and .resx files into your project directory and include them in the project itself. You'll either have to add an Images directory to your project for the tool's icon or change the [
ToolboxBitmap ....] line in the .cs file to point to an image you want to use. Then, use it like any other control.
Known issues with this version:
- No location serialization - the control does not remember where it was placed between iterations.
- Control does not always size correctly when dragged and docked to an edge.
- Does not always play nicely with the design environment - I've had it lose child controls, somewhat intermittently.
Anyhow, it needs a little work (I'll try to keep new versions posted), but it's enough to get you started. Enjoy!