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

    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);
    }
    }
    }

    ---------------------------------------------------
    DevExpress  DXperience 是.NET控件套包、IDE报表生成工具和企业应用程序框架,DXperience帮助中国软件企业开发出很多优秀的软件产品 DXperience其产品的品牌、质量,是全球公认的。

    本站文章除注明转载外,均为本站原创或翻译
    欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果
    转载请注明:文章转载自:DevExpress控件中文网 [http://www.devexpresscn.com/]
    本文地址:http://www.devexpresscn.com/news/news-88.html
  • 相关阅读:
    正则表达式
    iOS获取设备型号、设备类型等信息
    Dubbo-Zookeeper安装
    CentOS-常用安装
    多线程-线程通信
    JVM-高效并发
    静态代理与JDK动态代理
    JVM-类加载机制
    RPC原理及实现
    JVM-自动内存管理机制
  • 原文地址:https://www.cnblogs.com/Peter-Luo/p/3522475.html
Copyright © 2011-2022 走看看