DevExpress的10个使用技巧

1.TextEditor(barEditItem)取文本

string editValue = barEditItem1.EditValue.ToString();    //错误,返回null

 

string editValue = ((DevExpress.XtraEditors.TextEdit)barEditItem).EditValue.ToString();    //正确,返回文本框内容

2.ComboBoxEdit(barEditItem)添加Item

string item = "comboboxItem1";

((DevExpress.XtraEditors.Repository.RepositoryItemComboBox)this.barEditItem.Edit).Items.Add(item);

3.ComboBoxEdit(barEditItem)取文本

string itemValue = this.barEditItem.EditValue.ToString();

4.Ribbon控件

//添加Page

DevExpress.XtraBars.Ribbon.RibbonPage ribbonPage = new RibbonPage();

ribbonControl.Pages.Add(ribbonPage);

//添加Group

DevExpress.XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup = new RibbonPageGroup();

ribbonPage.Groups.Add(ribbonPageGroup);

//添加Button

DevExpress.XtraBars.BarButtonItem barButtonItem = new BarButtonItem();

ribbonPageGroup.ItemLinks.Add(barButtonItem);

//添加barSubItem

DevExpress.XtraBars.BarSubItem barSubItem = new BarSubItem();

ribbonPageGroup.ItemLinks.Add(barSubItem);

//barSubItem下添加Button

barSubItem.AddItem(barButtonItem);

 

 

//奇怪的删除Page问题

while (this.ribbonControl.Pages.Count > 0)

{

     ribbonControl.Pages.Remove(ribbonControl.Pages[0]);    //调试正常,运行报异常

}

while (this.ribbonControl.Pages.Count > 0)

{

     ribbonControl.SelectedPage = ribbonControl.Pages[0];

     ribbonControl.Pages.Remove(ribbonControl.SelectedPage); //运行正常

}

//禁止F10键Tips

ribbonControl.Manager.UseF10KeyForMenu = false;

//DX按钮

ApplicationIcon属性改变图标

右键 Add ApplicationMenu 添加evExpress.XtraBars.Ribbon.ApplicationMenu

5.HitInfo

//在Tab页上点击右键的事件响应

void xtraTabbedMdiManager_Event(object sender, MouseEventArgs e)

{

     if (e.Button == MouseButtons.Right && ActiveMdiChild != null)

     {

          DevExpress.XtraTab.ViewInfo.BaseTabHitInfo hInfo = xtraTabbedMdiManager.CalcHitInfo(e.Location);

          //右键点击位置:在Page上且不在关闭按钮内

          if (hInfo.IsValid && hInfo.Page != null && !hInfo.InPageCloseButton)

          {

               this.popupMenu.ShowPopup(Control.MousePosition);//在鼠标位置弹出,而不是e.Location

          }

     }

}

//在ribbon上点击右键的事件响应

private void ribbonControl1_ShowCustomizationMenu(object sender, RibbonCustomizationMenuEventArgs e)

{

    //禁掉原系统右键菜单

    e.ShowCustomizationMenu = false;

    //右键位置:在barButtonItem上

    if (e.HitInfo != null

     && e.HitInfo.InItem

     && e.HitInfo.Item.Item is BarButtonItem)

    {

         this.popupMenu.ShowPopup(Control.MousePosition);

    }

    //右键位置:在barSubItem中的barButtonItem上

    else if (e.Link != null

          && e.Link.Item != null

          && e.Link.Item is BarButtonItem)

    {

         this.popupMenu.ShowPopup(Control.MousePosition);

    }

}

6.皮肤

//添加皮肤程序集后注册皮肤

DevExpress.UserSkins.OfficeSkins.Register();

DevExpress.UserSkins.BonusSkins.Register();

//设置皮肤

DevExpress.LookAndFeel.UserLookAndFeel.Default.SetSkinStyle("Liquid Sky");    //若皮肤名称错误则按系统默认设置(第一个皮肤)

//GalleryFilterMenuPopup事件设置弹出筛选菜单的“All Groups”为中文

private void rgbiSkins_GalleryFilterMenuPopup(object sender, GalleryFilterMenuEventArgs e)

{

    e.FilterMenu.ItemLinks[n].Caption = "所有皮肤";    //n=分组数+1

}

//GalleryInitDropDownGallery事件设置弹出皮肤列表的表头“ALL Groups”为中文

private void rgbiSkins_GalleryInitDropDownGallery(object sender, InplaceGalleryEventArgs e)

{

    e.PopupGallery.FilterCaption = "所有皮肤";

}

7.dockManager

将视图的状态信息保存到xml文件

dockManager1.SaveLayoutToXml("..\\UserConfig\\ViewInfo.xml");

导出xml中保存的状态信息

dockManager1.RestoreLayoutFromXml("..\\UserConfig\\ViewInfo.xml");

8.barManager

设置bar的字体与系统字体

barAndDockingController1.AppearancesBar.ItemsFont = new Font(this.Font.FontFamily, currentFontSize);

9.设置系统字体

DevExpress.Utils.AppearanceObject.DefaultFont = new Font(this.Font.FontFamily, currentFontSize);

10.treeView

为tree节点加右键菜单并选中该节点

        private void treeList1_MouseDown(object sender, MouseEventArgs e)

        {

            if (e.Button == MouseButtons.Right)

            {

                DevExpress.XtraTreeList.TreeListHitInfo hi = treeList1.CalcHitInfo(e.Location);

                if (hi.Node != null && hi.Node.ImageIndex == 5) //叶子节点的ImageIndex == 5

                {

                    TreeListNode node = treeList1.FindNodeByID(hi.Node.Id);

                    treeList1.FocusedNode = node;

 

                    this.popupMenu1.ShowPopup(MousePosition);

                }

            }

        }

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值