DockManager如何停靠 z

 

DockManager默认只能停靠在窗体上,如果想停靠在其他控件上,我们发现并没有选项可以选,可能目前大部分解决方法是新建一个用户控件文件,再在用户控件里面单独设计模块。
除了这种方法还有没有其他的呢?

既然我们知道DockManager的DockPanel能停靠在UserControl,之前有人说DevExpress在工具箱为什么要显示一个XtraUserControl用户控件,是不是很多余,其实不然,
XtrauserControl完成可以当做一个空的用户控件或者布局使用,至于里面要放什么控件,请随便。知道这个了,那我们的问题就解决了。
我们试着从工具箱拖出一个XtraUserControl,我们再看看DockManager的Form属性,这时候我们可以看到可以选择所拖的XtrauserControl,perfect !





Ok, 我们再拖一个dockmanager,停靠在窗体上,一个想要的界面就可以搞定了。

/////  https://stackoverflow.com/questions/14555782/devexpress-dynamic-docking-of-dock-panels

DevExpress dynamic docking of dock panels

IList<DockPanel> mLeftSidePanels = new List<DockPanel>();
//...
void addNewPanelButton_Click(object sender, EventArgs e) {
    dockManager1.BeginUpdate();

    DockPanel dockPanel = dockManager1.AddPanel(DockingStyle.Top);
    // Dock the panel to the previous panel
    if(mLeftSidePanels.Count == 0)
        dockPanel.DockTo(dockPanelSettings);
    else {
        // add to parent split container
        dockPanel.DockTo(dockPanelSettings.ParentPanel);
    }
    mLeftSidePanels.Add(dockPanel);

    dockManager1.EndUpdate();
}

 

posted on 2017-07-18 21:32  武胜-阿伟  阅读(1077)  评论(0编辑  收藏  举报