Пример #1
0
        public static DockPane PaneAtPoint(Point pt, DockPanel dockPanel)
        {
            Control  control = Win32Helper.ControlAtPoint(pt);
            DockPane result;

            while (control != null)
            {
                IDockContent dockContent = control as IDockContent;
                if (dockContent != null && dockContent.DockHandler.DockPanel == dockPanel)
                {
                    result = dockContent.DockHandler.Pane;
                }
                else
                {
                    DockPane dockPane = control as DockPane;
                    if (dockPane == null || dockPane.DockPanel != dockPanel)
                    {
                        control = control.Parent;
                        continue;
                    }
                    result = dockPane;
                }
                return(result);
            }
            result = null;
            return(result);
        }
Пример #2
0
        public static FloatWindow FloatWindowAtPoint(Point pt, DockPanel dockPanel)
        {
            for (Control control = Win32Helper.ControlAtPoint(pt); control != null; control = control.Parent)
            {
                FloatWindow floatWindow = control as FloatWindow;
                if (floatWindow != null && floatWindow.DockPanel == dockPanel)
                {
                    return(floatWindow);
                }
            }

            return(null);
        }
Пример #3
0
        public static DockPane PaneAtPoint(Point pt, DockPanel dockPanel)
        {
            for (Control control = Win32Helper.ControlAtPoint(pt); control != null; control = control.Parent)
            {
                IDockContent content = control as IDockContent;
                if (content != null && content.DockHandler.DockPanel == dockPanel)
                {
                    return(content.DockHandler.Pane);
                }

                DockPane pane = control as DockPane;
                if (pane != null && pane.DockPanel == dockPanel)
                {
                    return(pane);
                }
            }

            return(null);
        }