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
  • 相关阅读:
    I.MX6 Surfaceflinger 机制
    理解 Android Fragment
    RPi 2B DDNS 动态域名
    RPi 2B IPC webcam server
    理解 Android MVP 开发模式
    I.MX6 system.img unpack repack
    can't set android permissions
    VMware Ubuntu 共享文件夹
    解决oracle数据库连接不上的问题
    perfect-scrollbar示例
  • 原文地址:https://www.cnblogs.com/Peter-Luo/p/3522475.html
Copyright © 2011-2022 走看看