DevExpress控件使用使用技巧小结
相关搜索: 小结, DevExpress, 控件, 技巧
零零散散的先总结一下吧
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);


//奇怪的删除Pageeditor bar问题
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); //运行正常
}
//禁止F10Tips
ribbonControl.Manager.UseF10KeyForMenu = false;
//DX按钮
ApplicationIcon属性改变图标
右键 Add ApplicationMenu 添加evExpress.XtraBars.Ribbon.ApplicationMenu5.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\\l");
导出xml中保存的状态信息
dockManager1.RestoreLayoutFromXml("..\\UserConfig\\l");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);
                }
            }
        }

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。