Hi,
I'm trying to get the following scenario to work:
A horizontal splitter with the top area a dock Top, and the bottom area a dock Fill, such that the bottom area sizes to fill when the control is resized. When the collapse button is pressed I want the bottom area to collapse.
As far as I can tell the area which collapses is controlled by the dock property of the splitter. However, if I set the splittler dock to Bottom then it no longer exists between the two areas but sort of hangs around sulking at the bottom of the control. A bottom docked splitter seems to only work if the bottom panel is docked bottom (except I want the bottom panel to size to fill).
(I am only using version 10.3 but haven't seen anything in the release notes to make me think that this behaviour changes in later versions)
Can anyone help me?
Hello Suelyn,
The 'UltraSplitter' control cannot be docked to 'Fill'. What I understand after reading your post is that you want the bottom panel to take the rest of the space all the way to the top.
I think that you have to do this manually, by increasing its height, I cannot think of any other way around this.
Please feel free to let me know if I misunderstood you or if you have any other questions.
I was able to get the effect I wanted with a bit of fiddling in the collapsed changed event (and if possible please pass on to the correct people that a collapsed changing event would have been really nice).
if (mInCollapseChanged) return; mInCollapseChanged = true; try { bool collapsed = ultraSplitter1.Collapsed; if (ultraSplitter1.Collapsed) { ultraSplitter1.Collapsed = false; } if (!collapsed) { this.Controls.Clear(); this.Controls.Add(this.ultraPanel1); this.Controls.Add(this.ultraSplitter1); this.Controls.Add(this.ultraPanel2); ultraPanel2.Dock = DockStyle.Top; ultraPanel1.Dock = DockStyle.Fill; ultraSplitter1.Dock = DockStyle.Top; } else { this.Controls.Clear(); this.Controls.Add(this.ultraPanel2); this.Controls.Add(this.ultraSplitter1); this.Controls.Add(this.ultraPanel1); ultraPanel1.Dock = DockStyle.Bottom; ultraSplitter1.Dock = DockStyle.Bottom; ultraPanel2.Dock = DockStyle.Fill; } if (collapsed) { ultraSplitter1.Collapsed = true;
} } finally { mInCollapseChanged = false; }
Thank you for your feedback and for sharing this with us. We believe that the other community members could benefit from such threads.
After some research, the "Support of CollapsedChanging event" has been determined to be a new product idea. I have sent your idea directly to our product management team.
Our product team chooses new ideas for development based on popular feedback from our customer base. Infragistics continues to monitor application development for all of our products, so as trends appear in requested features, we can plan accordingly.
We value your input, and our philosophy is to enhance our toolset based on customer feedback. If your idea is chosen for development, you will be notified at that time.
Your reference number for this product idea is PI13030006.
If you would like to follow up on your request at a later point, you may contact Developer Support management via email. Please include the reference number of your product idea in the subject and body of your email message. You can reach Developer Support management through the following email address: dsmanager@infragistics.com
Thank you for your request.