Hello,
I'm using the UltraDockManager in order to have some control panes in flyout mode on the side of the form. My problem is that on the control pane I have a button that opens a dialog window. When the mouse cursor leaves the control pane area to go to the dialog window, the control pane closes up again, forcing the user to constantly trigger the flyout mode each time a dialog window is used.
Is there anyway around this? Perhaps a method that would force the Flyout control pane to stay open?
Any help would be greatly appreciated, thank you.
No, I've been changing the AutoHideDelay to get the desired effect. Since the content of my control pane is a custom user control, I had to add 2 events in it that are triggered whenever a model dialog is opened or closed. I then put the following in my form in order to modify the delay.
{
dockManager.AutoHideDelay = 3600000;
}
I hope that helps.
Did you ever find a solution to this other than setting a long timeout?I'm having a similar issue, I'm showing a property grid in a flyout tab and one of the properties has an editor that opens in a modal dialog, however when the dialog has focus/is used, the flyout tab closes which is very annoying.
Regards,
- Aaron.
Thanks for the reply. My modal dialog is actually called from within a user control which is itself inside another user control, which is then in the pane on the form. So the dialog might not be seen as belonging to the main form, i'll check that. But if that dosen`t work, your workaround is a good idea, thanks.
This looks like it may be a bug. If a modal dialog is shown and owned by the main form, I don't think flyout panes should be hiding. I would recommend reporting the issue to the support group: http://es.infragistics.com/gethelp.
As a workaround, you can change the AutoHideDelay before and after showing the dialog to prevent the pane from closing for a while:
private void button1_Click( object sender, EventArgs e ){ int oldDelay = this.ultraDockManager1.AutoHideDelay;
try { this.ultraDockManager1.AutoHideDelay = 1000000; MessageBox.Show( "Test" ); } finally { this.ultraDockManager1.AutoHideDelay = oldDelay; }}