zoukankan      html  css  js  c++  java
  • 总结DevExpress10个使用技巧

    DevExpress是非常主流的.NET控件,目前全世界和中国都用很多用户使用,不过由于是英文版,初次接触的同学可能会觉得困难,这里就总结DevExpress常见的10个使用技巧。

    1.TextEditor(barEditItem)取文本 

    string editValue = barEditItem1.EditValue.ToString();    //错误,返回null
     
    string editValue = ((DevExpress.XtraEditors.TextEdit)barEditItem).EditValue.ToString();    //精确,返回文本框内容 DevExpress使用技巧

    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问题( DevExpress使用技巧)
    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 (DevExpress使用技巧)
    ribbonControl.Manager.UseF10KeyForMenu = false;
    //DX按钮
    ApplicationIcon属性改动图标
    右键 Add ApplicationMenu 添加evExpress.XtraBars.Ribbon.ApplicationMenu5.HitInfo 

    //在Tab页上点击右键的工作响应(DevExpress使用技巧)
    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使用技巧)
    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);
                    }
                }
            }
     
  • 相关阅读:
    lr 增强窗格中,如何生成调试信息?
    lr 自带的例子,如何进行关联,通过代码的函数进行实现
    lr11 录制脚本时候,无法自动启动ie,查了网上很多方法都未解决?
    loadrunner11 录制脚步不成功,在录制概要出现“No Events were detected”,浮动窗口总是显示“0 Events”,解决办法
    loadrunner11 安装及破解教程来自百度文库
    安装loadrunner11 ,出现如下错误如何解决?
    回收站数据删除了,如何进行恢复?
    网管工作方面——————打印机删除了然后开机重启他依然存在,如何解决
    Windows 不能在 本地计算机 启动 SQL Server 服务 错误代码126
    Sorry, the page you are looking for is currently unavailable. Please try again later. Nginx
  • 原文地址:https://www.cnblogs.com/51net/p/2560768.html
Copyright © 2011-2022 走看看