Popup Menus 彈出菜單
使用彈出菜單(popup menus),我們可以在 控件上 顯示 上下文選項 或 命令。
彈出菜單是一個顯示了特定項的窗體,用戶可以選擇這些項以執行相應的操作。
使用PopupMenu控件就可以在我們的應用程序中使用彈出菜單。
通過BarManager的“名稱”+“PopupContenxtMenu”屬性綁定PopuMenus控件
注意:
在定制和使用popup menu之前,需要向窗體上添加一個bar manager並確保這個popup menu綁定 了這個bar manager。
默認情況下,在設計時(at design time)添加到窗體的彈出菜單會自動地尋找窗體內的 bar manager
如果找到的話,會通過PopupMenu.Manager屬性將其綁定到bar manager。
如果沒有自動綁定到bar manager,那就通過PopupMenu.Manager屬性手動綁定。
以下是PopupMenu組件的使用方法:
第一步:從工具箱中將BarManager拉入窗體
第二步:在BarManager控件中點擊
添加幾個BarSubItem項(子項-有下一級菜單)。
第三步:在BarManager控件中點擊添加幾個BarBottonItem(最終項)。
第四步:從工具箱中將PopupMenu拉入窗體,設置PopupMenu的Manager屬性為barManager1。
第五步:右擊PopupMenu在彈出的菜單內選中Customize,
然后在彈出的對話框中, 把想要在右鍵菜單中顯示的項 拉進PopupMenu中就OK了,或者手工添加
核心步驟 第六步:
在需要右擊后彈出菜單的控件上, 監聽xxxx_MouseUp事件,
添加以下代碼段, 彈出PopupMenu菜單
if (e.Button == MouseButtons.Right)
{
popupMenu1.ShowPopu(Control.MousePosition);
}
效果如下:
RadialMenu控件
該控件是圓形菜單,可以以菜單的形式添加菜單項;
該控件的ShowPopup(Point point)方法用於顯示圓形菜單
該控件必須綁定到RibbonControl或者BarManager的屬性上去
代碼如下:
private void RadialMenuForm_MouseUp(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Right) { radialMenu1.ShowPopup(Control.MousePosition); } }
效果如下:
XtraTabControl控件
XtraTabControl:顯示多個選項卡
XtraTabPage: 選項卡頁
SelectedTabPage: XtraTabControl的一個屬性,可設置或取得當前選項卡頁。
設置Tab頭部的方向:
Headerlocation=left
HeaderOrientation=Horizontal
1、TabPages屬性
以集合的形式存儲page頁;
使用代碼添加頁:
using DevExpress.XtraTab; XtraTabPage page = new XtraTabPage(); page.Text = "beyond"; xtraTabControl1.TabPages.Add(page);
2、MultiLine屬性
把其值設為true, 當可用空間不夠顯示的頁標題的長度時,允許頁頭進行多行顯示.
xtraTabControl1.MultiLine = DevExpress.Utils.DefaultBoolean.True;
3、SelectedTabPage屬性
設定默認情況下顯示的頁(XtraTabPage對象);
獲取或設置當前選定選項卡頁的索引。
xtraTabControl.SelectedTabPageIndex = 1;
4、ClosePageButttonShowMode屬性
該屬性控制哪一頁上顯示關閉按鈕。
示例代碼如下:
this.xtraTabControl1.ClosePageButtonShowMode = DevExpress.XtraTab.ClosePageButtonShowMode.InActiveTabPageAndTabControlHeader;
效果如圖:
在Tab中顯示關閉按鈕:
設置xtraTabControl1的屬性 ClosePageButtonShowMode 為InAllTabPageHeaders
設置XtraTabPage的屬性ShowCloseButton屬性為true
5、HeaderButton屬性:
可以通過該屬性設置該控件右上角顯示的按鈕,
可以添加 Close, Next 和Prev 按鈕等。
6、SelectedPageChanged 事件
private void xtraTabControl1_SelectedPageChanged(object sender, DevExpress.XtraTab.TabPageChangedEventArgs e) { //通過不同的TabPage名稱,加載對應方法 if (e.Page.Name=="xtraTabPage1") { InitRoleBindingSource(); SetRoleChecked(); } else if (e.Page.Name=="xtraTabPage2") { InitEntSelectBindingSource(); SetEntSelectChecked(); } }
7、添加和刪除TabPage
https://blog.csdn.net/hyj_13/article/details/20314463
SplitContainerControl控件
實現效果如圖:
該控件的PanelVisibility屬性:
控制 面板Panel1和面板Panel2的可見性,
代碼如下:
//僅Panel1可見 splitContainerControl2.PanelVisibility= DevExpress.XtraEditors.SplitPanelVisibility.Panel1; //Panel1、Panel2都可見 splitContainerControl2.PanelVisibility= DevExpress.XtraEditors.SplitPanelVisibility.Both;
該控件的Horizontal屬性:
控制面板是成左右分割還是上下分割,
其值為true表示成左右分割布局;
其值為false表示成上下分割布局;
該控件的LookAndFeel屬性:
提供了改變控件外觀的權限,
該屬性下的UseDefaultLookAndFeel為false時,可以通過該控件的Appearance屬性對外觀進行設置;
GroupControl控件
實現效果如圖:
該控件的ShowCaption屬性,是bool類型,當其值為false時,表示不顯示標題;
該控件的CaptionImage屬性可以設置標題前的圖片顯示,例如:
this.groupControl1.CaptionImage=global::WindowsDev.Properties.Resources.additem_32x32;
該控件的LookAndFeel屬性下的UseDefaultLookAndFeel屬性控制:
是否可對皮膚進行設置,為bool類型;
該控件的BorderStyle屬性控制控件的邊框樣式:
示例代碼如下:
groupControl1.BackColor = Color.LightGray; groupControl1.LookAndFeel.UseDefaultLookAndFeel =false ; groupControl1.ShowCaption = true; groupControl1.BorderStyle= DevExpress.XtraEditors.Controls.BorderStyles.Simple;