Devexpress 控制元件學習記錄(一:BarManager 控制元件、XtraTabbedMdiManager 控制元件)

我本梁人發表於2024-04-12

BarManager 控制元件

最終實現的效果如下:
img

  1. 首先在窗體中拖出BarManager控制元件,窗體Bar add地方點選新增
    img
  2. 設定BarManager的屬性 設定出現的窗體的底部【DockStyle=Bottom】
    img
  3. 點選Add DropDown Menu 新增下拉選單
    img
    出現下拉選單
    img
  4. 設定下拉選單中的子選單
    選中下拉選單,然後點選下面的Add新增子選單 【這裡吐槽一下Dev這個設計器,是真的不好用,他把所有的子選單都展示出來了,點上面的分類也不好使】
    img
  5. 在選單中設定圖片以及圖片和文字顯示方式
    img
  6. 設定子選單的點選事件 在設計器中新增的BarButtonItem按鈕,在設計器介面是找不到事件屬性的,只能透過在Designer.cs 程式碼中新增關於按鈕的點選事件
 Designer.cs

 barButtonItem3.Caption = "掃碼列印";
 barButtonItem3.Id = 2;
 barButtonItem3.Name = "barButtonItem3";
 barButtonItem3.ItemClick += BarButtonItem3_ItemClick;

  private void BarButtonItem3_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
     {
     if (!this.MdiChildren.Any(a => a.Text == "掃碼列印"))
         {
             Form3 f = new Form3();
             //指定父級窗體
             f.MdiParent = this;
             f.Show();
         }
     else
         {
             //遍歷所有子窗體,找到已經開啟的子窗體,並顯示 拒絕重複開啟
             foreach (var item in this.MdiChildren)
             {
                 if (item.Text == e.Item.Caption)
                 {
                     item.Activate();
                     break;
                 }
             }
         }
     }

XtraTabbedMdiManager 控制元件

實現效果:實現多個子窗體同時展開,並出現在唯一的父窗體中。
img

  1. 首先在窗體中拖出XtraTabbedMdiManager控制元件
    img
  2. 在上面選單按鈕的點選事件中寫入程式碼
 private void BarButtonItem3_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
     {
     if (!this.MdiChildren.Any(a => a.Text == "掃碼列印"))
         {
             Form3 f = new Form3();
             //指定父級窗體
             f.MdiParent = this;
             f.Show();
         }
     else
         {
             //遍歷所有子窗體,找到已經開啟的子窗體,並顯示 拒絕重複開啟
             foreach (var item in this.MdiChildren)
             {
                 if (item.Text == e.Item.Caption)
                 {
                     item.Activate();
                     break;
                 }
             }
         }
     }

本篇文章僅作為學習記錄,如有錯誤歡迎大佬指出

相關文章