I'm Use Infragistics4.Win.Misc.v13.2 (13.2.20132.2098)
I'm trying to use DockManager for users to customize the positions of panels on Winform.
My question is that, for example, if there are three panels on a form, I would like to fix a panel on the top of the form and allow users to customize the other remaining forms only. I managed to make a sample source code, but I would like to know if there is any better way to make it.
Here's the detail of the sample code that I have made.The docking function should not be allowed on the left and right side of the top panel. First I tried to use BeforeDockChange event but couldn’t get any clue. So then I tried AfterDockChange event, and it seemed to work. However, I think the logic should be in BeforeDockChange event for better performance.
Thanks in advance for your cooperation.
Hi Dimitar,
Thank you for providing samples.
Hi Jun,
Thank you for the reply.
I will suggest an alternative approach, which I believe better suits your needs. You can use the HostControl property of the UltraDockManager in order to specify a control in which to dock the different panes. This allows you to dock the “Top” panel on the top and add a UserControl, which will be used for the HostControl (the host control must be a ContainerControl). You can dock the UserControl to fill the remaining are left by the top panel. After that in runtime just specify that the UserControl is the DockManager’s HostControl and the user will be able to dock controls only inside it and you don’t need any additional events in order to ensure this.
I have modified your sample in order to demonstrate this suggestion.
Please let me know if you have any additional questions.
Hello Milko,
Thank you for answers.
Im Hyun Jung is a team like this
The problem of the attached sample source code is that the floating panel cannot go back to the original location.Please check the video capture file, in which I try to put the floating panel back to the original location, but it just disappears, showing only the pink top panel full of the form. That's why I asked if there’s any better way to make it.Please check the sample source code again, and let me know if there’s any better way.
Thanks a lot.
Hello HyeonJeong,
Thank you for posting in our forum.
When the user drags and drops any pane of UltraDockManager the index of the dock area where the user drops the pane becomes 0. This force this area to fill its entire width (if docked at top or bottom) or its entire height (if docked at left of tight). So if you need your top area to retain its width equal to entire form you need to create it after the user drops the pane. And this is exactly what you did in your AfterDockChange event handler. So yes this is the correct way to do this.
After working on this and doing some research, the idea to be able to set the dock area index has been determined to be a new product idea. You can suggest new product ideas for future versions (or vote for existing ones) at <http://ideas.infragistics.com>.
There are many benefits to submitting a product idea:
- Direct communication with our product management team regarding your product idea.
- Notifications whenever new information regarding your idea becomes available.
- Ability to vote on your favorite product ideas to let us know which ones are the most important to you. You will have ten votes for this and can change which ideas you are voting for at any time.
- Allow you to shape the future of our products by requesting new controls and products altogether.
- You and other developers can discuss existing product ideas with members of our Product Management team.
Steps to create your idea:
Log into the Infragistics Product Idea site at http://ideas.infragistics.com (creating a new login if needed).
Navigate to the product / platform channel of your choice (e.g. WPF, Windows Forms, ASP.NET, HTML5 / Ignite UI, iOS / NucliOS, etc.)
Add your product idea and be sure to be specific and provide as much detail as possible.
- Explain the context in which a feature would be used, why it is needed, why it can’t be accomplished today, and who would benefit from it. You can even add screenshots to build a stronger case. Remember that for your suggestion to be successful, you need other members of the community to vote for it. Be convincing!
- Include a link to this thread in your idea so product management will be able to look back at this case.
The Product Idea site puts you in the driver’s seat and allows you to track the progress of your ideas at any time, see how many votes it got, read comments from other developers in the community, and see if someone from the product team has additional questions for you.
Thank you for using Infragistics Controls.