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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM