DevExpress傳統界面設計:ToolBar和工具條停靠控件、和popupMenu彈出菜單

     工具條停放控件(bar dock controls)是工具條(toolbar)的容器,它們位於窗體或用戶控件內用以容納工具條對象。有regular和standalone兩種工具條停放控件。

     regular bar dock controls是由BarManager自動維護的,我們不用手動去創建它們。它們停靠在容器(比如窗體)的任意一邊,以顯示工具條。

當工具條停靠於容器(比如form)的任意一邊時,regular bar dock controls將工 具條的停靠位置顯示出來。當創建 Bar Manager時,它會自動創建4個regular dock controls,並將它們停靠在窗體的相應邊 緣。

     只有當一個工具條停放在一個dock control上時,這個dock  control纔是可見的。其他 情況下,dock  control的寬度都是0。當將工具條拖動到窗體的任意一邊時,相應的dock controls會容納並顯示這個工具條。 Bar.CanDockStyle屬性可以指定工具條的可能停放位置。


       一般情況下,在應用程序中是沒有必要去改變regular dock controls的屬性的。除非我們想 要爲停靠的工具條提供背景設置。Bar Manager會自動創建名爲barDockControl1...barDockControl4的4個 dock controls。每個dock control都是一個BarDockControl類。在設計時,我們通過在屬性窗口選擇相應的對象來訪問 dock control。此外,如果dock control是可見的,並且沒有完全被工具條覆蓋,我們可以單擊選中它,以在屬性窗口中顯示它。

 BarManager中的StandaloneBarDockControl屬性用來在窗體內的任何位置顯示工具條。我們需要手動綁定StandaloneBarDockControl控件

 二、Standalone Bar Dock Controls

    Standalone bar dock controls允許工具條停靠在窗體或用戶控件上的任意位置,而不僅僅是窗體的邊緣。創建一個StandaloneBarDockControl對象並且將工具條添加到其上就能做到這種效果。

   像regular control一樣,standalone bar dock controls可以在窗體或用戶 控件中隨意放置。它們的Dock、Location和Size屬性用來指定佈局設置。 StandaloneBarDockControl.AutoSize屬性用來啓用自動調整大小模式。在這種模式下,當向該控件添加或刪除工具條時,該控件的大小是自動變化的(以適應工具條)。

    使用Standalone bar dock controls的前提是該窗體或用戶控件上已添加了 BarManager控件。如果我們以編碼的方式創建了StandaloneBarDockControl對象,那麼我們就需要手動將其添加到 BarManager的BarManager.DockControls集合中。

三、popupMenu

設計:popupMenu拖動到窗體設計器,Manager=BarManager

1、點擊智能標籤,選擇customize定製,


2、選擇Commands ,拖動相應的命令到Popup Menu Editor即可(這裏是映射到同一個命令,雖然menubar和toolbar也可以直接拖動,但是是cut操作),或者增加新的命令


3、顯示彈出菜單的常用方法一般是右擊鼠標的操作。popupMenu1.ShowPopup(彈出位置);

  方法一:在Button的MouseUp事件中處理, 鼠標次數e.Count

        private void simpleButton1_MouseUp(object sender, MouseEventArgs e)
        {
            if (e.Button==MouseButtons.Right)
            {
                this.popupMenu1.ShowPopup(Control.MousePosition);
            }         
        }

e.Clicks爲鼠標按鍵次數

 方法二:直接設置button的PopupContextMenu on barManager1  爲 popupMenu1


20130614124646


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章