This is a migrated thread and some comments may be shown as answers.

Docking problem on Citrix

2 Answers 39 Views
Docking
This is a migrated thread and some comments may be shown as answers.
Arnstein
Top achievements
Rank 1
Arnstein asked on 08 Jun 2012, 12:50 PM
Hi, one of our customers are getting exceptions when they are docking toolwindows. The exception occures when dragging a window to one of the arrows in the "diamond". They are running the application on a 2003 windows server with Citrix. I'm guessing they are running into a Citrix or network issue as this behavior is not reproducable in test environments.  The exception beeing thrown is:

Versjon: 2012.2.101.15, OS: Microsoft Windows NT 5.2.3790 Service Pack 2 64-bits: False

Exception: Not enough storage is available to process this command

 

Telerik.Windows.Controls.InternalWindow.Standard.NativeMethods

CreateRoundRectRgn

 

 

 

Source: Telerik.Windows.Controls

 

Target: IntPtr CreateRoundRectRgn(Int32, Int32, Int32, Int32, Int32, Int32)

 

Stacktrace:    at Telerik.Windows.Controls.InternalWindow.Standard.NativeMethods.CreateRoundRectRgn(Int32 nLeftRect, Int32 nTopRect, Int32 nRightRect, Int32 nBottomRect, Int32 nWidthEllipse, Int32 nHeightEllipse)

   at Telerik.Windows.Controls.InternalWindow.ChromelessWindowHelper.RoundNonTransparentWindowCorners(IntPtr hwnd)

   at Telerik.Windows.Controls.InternalWindow.ChromelessWindowHelper.HandlePositionChanged(IntPtr hwnd, IntPtr wParam, IntPtr lParam, Boolean& handled)

   at Telerik.Windows.Controls.InternalWindow.ChromelessWindowHelper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)

   at System.Windows.Interop.HwndSource.PublicHooksFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)

   at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)

   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)

   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)

   at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)

Any suggestions on what is going on here?

Best regards
Arnstein

2 Answers, 1 is accepted

Sort by
0
Arnstein
Top achievements
Rank 1
answered on 12 Jun 2012, 12:36 PM
A more specific question; Is it possible to collapse/hide the content of a toolwindow while dragging it? You would only see the frames of the toolwindow in order to improve performance. 

Regards
Arnstein
0
Accepted
Konstantina
Telerik team
answered on 13 Jun 2012, 07:51 AM
Hello Arnstein,

You can hook to the PaneStateChange event of the Docking control, which is fired every time a pane is dragged, dropped, pinned, unpinned, etc. There you could check whether the pane IsFloating and if true to remove its content in order to optimize performance, for example:

private void radDocking_PaneStateChange(object sender, Telerik.Windows.RadRoutedEventArgs e)
{
    RadPane pane = (RadPane)e.OriginalSource;
    {
        if (pane != null && pane.IsFloating)
        {
            // remove content of pane
        }
    }
}

Hope this helps.

Greetings,
Konstantina
the Telerik team
Explore the entire Telerik portfolio by downloading the Ultimate Collection trial package. Get it now >>
Tags
Docking
Asked by
Arnstein
Top achievements
Rank 1
Answers by
Arnstein
Top achievements
Rank 1
Konstantina
Telerik team
Share this question
or