protected override void LayoutChildren(double x, double y, double width, double height)
        {
            if (width == -1 || height == -1)
            {
                return;
            }

            Size req               = OperationBar.Measure(width, height).Request;
            Size taskListReq       = TaskListFrame.Measure(width, height).Request;
            Size currentToolbarReq = _curPage.MeasureToolBar(width, height).Request;

            if (currentToolbarReq.Width + req.Width < width)
            {
                ToolbarSeperator.IsVisible = currentToolbarReq.Width + req.Width > width - 30;
                OperationBar.Layout(new Rectangle(width - req.Width, 0, req.Width, req.Height));
                ContentFrame.Layout(new Rectangle(0, 0, width, height - taskListReq.Height));
            }
            else
            {
                ToolbarSeperator.IsVisible = false;
                OperationBar.Layout(new Rectangle(0, 0, req.Width, req.Height));
                ContentFrame.Layout(new Rectangle(0, req.Height, width, height - taskListReq.Height));
            }

            TaskListFrame.Layout(new Rectangle(0, height - taskListReq.Height, taskListReq.Width, taskListReq.Height));
        }