Docking problem on Citrix

3 posts, 1 answers
  1. Arnstein
    Arnstein avatar
    36 posts
    Member since:
    Oct 2012

    Posted 08 Jun 2012 Link to this post

    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. Arnstein
    Arnstein avatar
    36 posts
    Member since:
    Oct 2012

    Posted 12 Jun 2012 Link to this post

    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
  3. UI for WPF is Visual Studio 2017 Ready
  4. Answer
    Konstantina
    Admin
    Konstantina avatar
    2332 posts

    Posted 13 Jun 2012 Link to this post

    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 >>
Back to Top