dockpanel可停靠布局设计

步骤如下

1:管理NUGET包中安装 下面两个包:DockPanelSuite 和 DockPanelSuite.ThemeVS2015


2:在工具箱中找到 DockPanel  和 VS2015BlueTheme  拖入主界面


3:添加三个窗体FormLeft , FormCenter , FormRight,让它们都继承DockContent
4:    在主界面加入代码:

            dockPanel1.Theme = vS2015BlueTheme1;
            //左停靠窗口
            FormLeft formLeft = new FormLeft();
            formLeft.Show(dockPanel1, DockState.DockLeft);
            //中间停靠窗口
            FormCenter  fc= new FormCenter();
            fc.Show(dockPanel1, DockState.DockLeft);
            //右停靠窗口
            FormRight fr = new FormRight();
            fr.Show(dockPanel1, DockState.DockRight);
    //底部停靠
    FormBottom fb = new FormBottom();
              fb.Show(dockPanel1, DockState.DockBottom);   

 5:有时需要更改停靠优先级
        代码:
        dockPanel1.UpdateDockWindowZOrder(DockStyle.Left, true);    //更改停靠优先级

6:当同时添加两个DockState.DockBottom,也就是同时添加两个窗体停靠位置都设为底部的时候

  会以选项卡的形式合并停靠。

7、DockTo这个方法能使上面这种情况变为并排停靠而非选项卡方式的合并停靠

  cameraStatus = CameraStatus.CreatCameraStatus();
  cameraStatus.Show(dockPanel1);
  cameraStatus.DockTo(dockPanel1, DockStyle.Bottom);

--------------------------------------------------------------------------------------------------------

dockpanel使用过程中遇到的问题:

界面加载的时候会有明显的闪烁,双缓存设置也没用

最后通过一个小技巧,在加载停靠窗体前设置为隐藏dockPanel1.Visible = false;

然后在停靠窗体加载的最后的地方再显示dockPanel1.Visible = true;也算是达到想要的效果了

 

posted @   JIAXUN  阅读(154)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示