DevExpress 控件使用技巧

摘要:
DevExpress是非常主流的.NET控件,目前世界各地和中国的许多用户都在使用它,但由于它是英文版本,第一次接触的学生可能会觉得很难。下面是使用DevExpress的10个常见技巧。{ribbon Control.SelectedPage=ribbon Control.Pages[0];ribbon Control.Pages.Remove;//操作正常}//F10键Tipsribbon控件时出现异常。管理器已禁用UseF10KeyForMenu=false;//DXbuttonApplicationIcon属性修改图标右键单击AddApplicationMenu添加evExpress.XtraBars.Ribbon.ApplicationMenu5.HitInfo//在选项卡页上,右键单击工作响应voidxtraTabbedMdiManager_Event{if(e.Button==MouseButton。right&&ActiveMdiChild!=null){DevExpress.XtraTab.ViewInfo.BaseTabHitInfohInfo=xtraTabedMdimanager.CalcHitInfo;//右键单击位置:在页面上,而不是在关闭的按钮中如果(hInfo.IsValid&&hInfo.page!
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;
//DXbutton
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上且不在封闭button内
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 控件使用技巧》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇C# 获取枚举集合的其中两种方式pyTorch进阶-torch下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

VS2012或VS2010 工具栏中无法显示DevExpress控件

进入命令提示符 跳转到Dev控件安装目录,如【目录D:Program Files (x86)DevExpressDXperience 12.2Tools】下, 然后执行命令: ToolboxCreator.exe /ini:toolboxcreator.ini 如果要删除控件,则执行命令: ToolboxCreator.exe /ini:toolboxcr...

Dev属性设置

DisplayFormat 设置显示格式如:{0:P}表示显示为百分号模式。如数据源中为0.5。表示出来为50% 2、GridContro总合计及分组合计: 常规总合计直接RunDesigner-Group Summary Items DisplayFormat 设置显示格式如:{0:P}表示显示为百分号模式。如数据源中为0.5。表示出来为50% Fiel...

Devexpress实现自适应布局

总结了一下题主最近使用DXP空间设计自适应布局的经验。好的,让我们开始 一、设计一个simplebutton水平居中并且高度可调整 1、拖入一个PanelControl并设置其Dock为Bottom 2、拖入LayoutControl到PanelControl中并设置其Dock为Fill 3、LayoutControl上右键,选择CreateEmptySp...

Devexpress之LayoutControl的使用及其控件布局设计

引言 Devexpress给我们提供了更加美观、更加丰富控件,但在学习和使用的同时经常会遇到诸多麻烦。今天在使用Devexpress的LayoutControl控件进行界面控件的布局设计时遇到了如下的麻烦: 1.添加控件后,不知道如何修改控件的尺寸 2.由1引起的不知道如何讲两个控件放在同一行 经过摸索解决了以上问题。首先看我的需求是通过LayoutCon...

Winform传统DataGridView和DevExpress控件的GridControl两者表头全选功能的实现

在开发一个个人项目的时候,有客户反映默认GridView多选操作不是很方便和理想,想在列表的左边增加一列可以勾选,并且最好支持列表头部全选的操作,否则数据多的时候一个个勾选要到天荒地老。 基于以上需求,找了不少例子进行比较,并对代码进行测试改进,终于完成了以上的功能了, 并且由于我本身做了多套界面的处理,因此,基于传统的DataGridView全选操作不能...

DevExpress 编译成功的 dll

DevExpress编译成功的 dll 附注册方法 其它的有些文件没有,如:DevExpress.EasyTest这个程序集找不到 希望有的朋友可以分享一下, 安装程序集 通常,将程序集安装到GAC有两种方法: 1、将程序集(dll文件)手动拖至C:Windowsassembly 文件夹中。 2、利用全局程序集缓存工具Gacutil进行安装。 在Win10...