Is there a cookbook or howto somewhere that is just a step-by-step guide to getting started with the WinDockManager (or UltraDockManager)? I'm just trying to modify an existing MDI application just as a proof of concept, and it's baffling me how to just get some rudimentary docked windows or panels going...
What I have at present is an MDI container window that spawns child forms, and I'd like one particular child form to be docked, instead of as a standard child window, since it's functionally not really a document. It's used to create documents, and it seemed to me that it would be more appropriate as a docked tool window or something like that.
So I guess my first question is whether or not I'm approaching this from the right angle, or should I create a different kind of container object (like a panel or usercontrol) and then move the functionality to that other container from the child form in question. I guess I'm feeling like I'm missing a fundamental piece of the conceptual puzzle, and once I get past that hurdle I should be off and running...
Thanks!
OK... after trying several searches I finally found the area in the documentation that covers docking, so I think I may be good to go now.
Hmmm... it's still not really clear to me how to transform an MDI child form into a docking toolbar... any suggestions?
On your form, you can set TopLevel to False to allow the form to be a child of another control (you may also want to set FormBorderStyle to None so you don't see the normal form border). The you can dock the form with the following line of code:
this.ultraDockManager1.DockControls(new Control[{mdiChild}, DockedLocation.DockedLeft, ChildPaneStyle.TabGroup);
Hi Mike... thanks for the help! Ultimately I had to do the following, which is pretty much what you had recommended:
myForm = new MyForm(); myForm.TopLevel = false; Control[ dockControls = new Control[1] { myForm }; this.ultraDockManager1.DockControls(dockControls, Infragistics.Win.UltraWinDock.DockedLocation.DockedLeft, Infragistics.Win.UltraWinDock.ChildPaneStyle.VerticalSplit); myForm.Show();
I just thought I'd share this in case anyone else was having a problem similar to the one I was having.
Side Note:
One of the things that confused me was the TopLevel vs. TopMost property (the former not being in the property list in the IDE, so I was not initially aware of its existence), so I had to dig into the MSDN docs to figure out what that was about. It's been about two years since I've done any .NET/C#/WinForms coding so I'm having to re-learn quite a bit.
Thanks again for pointing me in the right direction!
Glad to hear you got it working.
evankstone said: Side Note: One of the things that confused me was the TopLevel vs. TopMost property (the former not being in the property list in the IDE, so I was not initially aware of its existence), so I had to dig into the MSDN docs to figure out what that was about. It's been about two years since I've done any .NET/C#/WinForms coding so I'm having to re-learn quite a bit.
I guess this would cause some confusion if a person were unaware of the TopLevel property. Thank you for bringing this to my attention. In the future when I need to reference this property, I'll be sure to mention that it can only be accessed programmatically.
So now, getting back to basics, is there a step-by-step tutorial for someone who wants to start from scratch with docking? The API documentation is helpful, but I'm finding myself scratching my head trying to figure out how to set it up in the simplest fashion. Sorry to be dense.
I think this would be the new link:
http://help.infragistics.com/Help/NetAdvantage/WinForms/2011.1/CLR2.0/html/WinDockManager.html
It's not the article, but there are a few helpful links there.
Seems this link is currently broken. When I click on it I get a nasty asp.net screen which states "Server Error in '/' Application." Is there a newer link?
Thanks
I think those may be exactly what I need... and thanks for pointing out the Developer's Guide section. I think my table of contents was hidden and I totally missed it (plus a little ADD... ).
Thanks, Mike!
The API documentation can be a difficult place to start to learn about a new control or component in the general sense. I would recommend instead going to the following location in the help tree:
Windows Forms > Developer's Guide > The Toolset > Controls and Components > WinDockManager
Here is an article from there to get you started at design time, but there are a few other articles in there which might be helpful:
http://help.infragistics.com/Help/NetAdvantage/NET/2008.1/CLR2.0/html/WinDockManager_Design_Time_Functionality.html