功能區(qū)表單
功能區(qū)表單(RibbonForm)嵌入功能區(qū)控件并支持皮膚。
RibbonForm類派生自XtraForm類,并共享其大部分功能,如發(fā)光或陰影效果。與XtraForm不同,ribbon表單的邊框和標(biāo)題欄總是被 skinned.
向項(xiàng)目中添加功能區(qū)表單
用RibbonForm作為您的主要表單來(lái)啟動(dòng)一個(gè)項(xiàng)目的最快方法是利用UI-ready DevExpress模板庫(kù),所有實(shí)現(xiàn)基于功能區(qū)UI的模板都使用功能區(qū)表單。
要添加新的Ribbon Forms,右鍵單擊Visual Studio的解決方案資源管理器窗口中的項(xiàng)目,然后選擇“Add DevExpress Item | New Item…”,這將調(diào)用帶有新項(xiàng)目模板的模板庫(kù),選擇“Ribbon Form”,輸入表單名稱,然后點(diǎn)擊“Add Item”。
將標(biāo)準(zhǔn)表單轉(zhuǎn)換為功能區(qū)表單
要用RibbonForms替換現(xiàn)有的默認(rèn)表單,調(diào)用表單智能標(biāo)簽并選擇“Convert to Ribbon Form”選項(xiàng),此操作還將添加RibbonControl和RibbonStatusBar控件到您的表單,如果它還沒有包含它們。
要在代碼中做同樣的事情,只需將表單從System.Windows.Forms.Form派生的基類更改為DevExpress.XtraBars.Ribbon.RibbonForm,還需要添加DevExpress.XtraBars庫(kù)到您的項(xiàng)目。
C# :
using DevExpress.XtraBars; namespace DXApplication1 { public partial class Form1 : RibbonForm { public Form1() { InitializeComponent(); } } }
VB.NET:
Imports DevExpress.XtraBars Namespace DXApplication1 Partial Public Class Form1 Inherits RibbonForm Public Sub New() InitializeComponent() End Sub End Class End Namespace
復(fù)合表單標(biāo)題
默認(rèn)情況下,RibbonForm的標(biāo)題是一個(gè)分配給RibbonForm.Text屬性的文本字符串,RibbonControl提供了兩個(gè)字符串屬性來(lái)覆蓋這個(gè)默認(rèn)標(biāo)題:RibbonControl.ApplicationCaption和RibbonControl.ApplicationDocumentCaption。第一個(gè)屬性存儲(chǔ)常量表單標(biāo)題,而第二個(gè)屬性可以在代碼中修改,來(lái)顯示當(dāng)前選定的MDI文檔的標(biāo)題。
這兩個(gè)標(biāo)題字符串都可以在RibbonAppearances.FormCaption和RibbonAppearances.FormCaptionForeColor2屬性的幫助下進(jìn)行定制。要使用它們,將DefaultBarAndDockingController添加到表單中,并通過(guò)BarAndDockingController.AppearancesRibbon屬性訪問(wèn)所需的屬性。
C# :
defaultBarAndDockingController1.Controller.AppearancesRibbon.FormCaption.ForeColor = Color.LightGray; defaultBarAndDockingController1.Controller.AppearancesRibbon.FormCaptionForeColor2 = Color.Lime;
VB.NET:
defaultBarAndDockingController1.Controller.AppearancesRibbon.FormCaption.ForeColor = Color.LightGray defaultBarAndDockingController1.Controller.AppearancesRibbon.FormCaptionForeColor2 = Color.Lime
增加邊框?qū)挾?/strong>
啟用WindowsFormsSettings.FormThickBorder或WindowsFormsSettings.MdiFormThickBorder屬性來(lái)放大表單邊框并拓寬大小調(diào)整區(qū)域,注意,這些設(shè)置會(huì)影響應(yīng)用程序中的所有XtraForms 和 RibbonForms。
當(dāng)陰影/輝光效果關(guān)閉時(shí),擴(kuò)大的邊框使用戶更容易調(diào)整表單大小,并且默認(rèn)的表單調(diào)整區(qū)域太小。
嵌入功能區(qū)快速訪問(wèn)工具欄
如果您希望在父功能區(qū)上方顯示快速訪問(wèn)工具欄,則該工具欄將顯示在功能區(qū)表單的標(biāo)題欄中。
嵌入狀態(tài)欄
功能區(qū)表單集成了RibbonStatusBar控件,狀態(tài)欄還可以顯示一個(gè)大小控制元素,最終用戶可以在兩個(gè)方向上拖動(dòng)該元素來(lái)調(diào)整功能區(qū)表單的大小。
與后臺(tái)視圖控件的交互
BackstageView控件是任何Ribbon的主應(yīng)用程序菜單,其RibbonControl.RibbonStyle沒有設(shè)置為“Office2007”,后臺(tái)菜單有自己的風(fēng)格,要改變它們,使用BackstageViewControl.Style屬性。
在Office 2010樣式中,后臺(tái)菜單使表單的標(biāo)題欄和ribbon頁(yè)頭保持可見。
在Office 2013樣式中,BackstageView控件占據(jù)了整個(gè)窗體,根據(jù)BackstageViewControl.BackstageViewShowRibbonItems屬性值,在這種風(fēng)格中,后臺(tái)菜單可以在其表面顯示Ribbon表單標(biāo)題,表單按鈕和Ribbon頁(yè)面標(biāo)題項(xiàng)。
功能區(qū)顯示選項(xiàng)
當(dāng)功能區(qū)控件為“Office 2013”樣式時(shí),功能區(qū)表單在標(biāo)準(zhǔn)的最小化、最大化和關(guān)閉按鈕旁邊顯示一個(gè)額外的按鈕,單擊此按鈕后,將彈出一個(gè)菜單,其中包含功能區(qū)控件可用的顯示模式。使用這個(gè)菜單,用戶可以將Ribbon切換到全屏模式,或者最小化Ribbon頁(yè)面,只留下標(biāo)簽頭。
禁用RibbonControl.ShowDisplayOptionsMenuButton選項(xiàng)來(lái)隱藏此按鈕。
打開OptionsExpandCollapseMenu.EnableExpandCollapseMenu 選項(xiàng),來(lái)啟用Ribbon Display Options彈出菜單,并從表單的標(biāo)題中隱藏按鈕。
Aero 支持
在Windows Vista和Windows 7中,Ribbon Forms包含了對(duì)Aero Glass效果的內(nèi)置支持。如果您的應(yīng)用程序在其中一個(gè)操作系統(tǒng)上運(yùn)行,并且在系統(tǒng)設(shè)置中啟用了Aero效果,那么表單標(biāo)題欄和邊框?qū)⑹前胪该鞯?,如下所示?
即使操作系統(tǒng)打開了Aero接口,也要禁用此效果,將RibbonForm.AllowFormGlass屬性設(shè)置為DefaultBoolean.False,在這種情況下,將根據(jù)當(dāng)前選擇的皮膚繪制表單邊框和標(biāo)題欄。