zoukankan      html  css  js  c++  java
  • WeifenLuo组件中如何设置停靠窗体的宽度

    在项目中使用了WeifenLuo.WinFormsUI.Docking组件,窗体停靠效果非常棒。

    现在项目出现了这样的需求,希望可以控制停靠窗体的宽度,因为默认的宽度往往会造成停靠窗体的内容显示不完全,降低了用户体验。

    停靠窗体有两种状态,一种是固定停靠显示,一种是自动隐藏停靠显示。表现为“自动隐藏”按钮是否处于按下状态。

    针对这两种状态,可以分别设置两个对应的属性,即可实现指定停靠窗体宽度的目的。

    约定:

    mainForm是主窗体,主窗体上放置了一个DockPanel;

    dockForm是停靠窗体,停靠在主窗体的右部

    即:dockForm.DockArea = DockAreas.DockRight;

    一、固定停靠显示

    即:dockForm.DockState = DockState.DockRight;

    设置窗体显示宽度方法如下:

    mainForm.DockPanel.DockRightPortion = (double)dockForm.Width / (double)mainForm.DockPanel.Width;

    DockRightPortion这个属性的含义是:右侧停靠窗体在固定停靠状态下,窗体宽度占停靠面板(DockPanel)的比例。

    二、自动隐藏停靠显示

    即:dockForm.DockState = DockState.DockRightAutoHide;

    设置窗体显示宽度方法如下:

    dockForm.AutoHidePortion = (double)dockForm.Width / (double)mainForm.DockPanel.Width;

    AutoHidePortion这个属性的含义是:右侧停靠窗体在自动隐藏停靠状态下,窗体宽度占停靠面板(DockPanel)的比例。

    参考:http://www.cnblogs.com/gaoyunpeng/archive/2010/08/17/1801323.html

  • 相关阅读:
    C++ XML文件解析
    coco2d-x create tableView
    cocos2d-x button setTitleLabel
    cocos2d-X create std colorlayer
    Windows cmd "tree"
    C/C++ std::function && std::bind
    C/C++ “std::invoke”: 未找到匹配的重载函数
    31 迭代器 Iterator 是什么?
    30 哪些集合类是线程安全的?
    02 rpx 与 px
  • 原文地址:https://www.cnblogs.com/bruceleeliya/p/3261962.html
Copyright © 2011-2022 走看看