搜档网
当前位置:搜档网 › Devexpress GridControl中RepositoryItemLookUpEdit级联显示

Devexpress GridControl中RepositoryItemLookUpEdit级联显示

Devexpress GridControl中RepositoryItemLookUpEdit级联显示
Devexpress GridControl中RepositoryItemLookUpEdit级联显示

在使用GridControl时,可能会有需求要求某2列显示RepositoryItemLookUpEdit控件,而且在选择第一列的值时,第2列绑定的数据源发生变化。当然这在其他地方很容易实现,但是在GridControl的列中就不能用以往的思维方式进行了,因为在GridControl中,你只有选中这一列,它才会显示出该列所绑定控件的特性,否则只是一个普通的lable。

基本思路:在点击第2列时才去获取第一列选中的值,然后根据该值查询出第2列的数据进行绑定。

方法/步骤

1. 1

1.RepositoryItemLookUpEdit控件的创建,我是在CustomRowCellEditForEditing这个事件下处理的。(因为我所需

要显示RepositoryItemLookUpEdit的列是动态创建的,所以需要这样创建,如果你是固定显示,直接绑定RepositoryItemLookUpEdit点击事件就可以了。)在这个事件里面,还可以控制某一列不同行显示不同控件。(因为Devexpress是只能设置某一列控件的属性的,不能精准到控制每个单元格中的控件)

//DEPOT 堆场列级联PORT港口列

private void Frm _Load(object sender, EventArgs e)

{

gridView.CustomRowCellEditForEditing += gridView_CustomRowCellEditForEditing;

}

void gridView_CustomRowCellEditForEditing(object sender,

DevExpress.XtraGrid.Views.Grid.CustomRowCellEditEventArgs e)

{

DevExpress.XtraGrid.Views.Grid.GridView view = sender as

DevExpress.XtraGrid.Views.Grid.GridView;

DevExpress.XtraEditors.Repository.RepositoryItemLookUpEdit lue = new

DevExpress.XtraEditors.Repository.RepositoryItemLookUpEdit();

switch (e.Column.FieldName)

{

case"DEPOT":

//获取该行port

string portFilter = view.GetRowCellValue(e.RowHandle, "PORT").ToString();

if (portFilter != null && portFilter != "")

{

this.depotBindingSource.Filter = string.Format("Port='{0}'", portFilter);

}

else

{

//自定义一个查不到结果的过滤条件

lue.DataSource = this.depotBindingSource.Filter =

string.Format("Port='123456'", portFilter);

}

#region RepositoryItemLookUpEdit 格式化

lue.DataSource = depotBindingSource;

lue.DisplayMember = "CODE";

lue.ValueMember = "CODE";

lue.CharacterCasing = System.Windows.Forms.CharacterCasing.Upper;

lue.Columns.AddRange(new

DevExpress.XtraEditors.Controls.LookUpColumnInfo[] {

new DevExpress.XtraEditors.Controls.LookUpColumnInfo("CODE", 90, "Code"),

new DevExpress.XtraEditors.Controls.LookUpColumnInfo("Desp", 350, "Desp"),

new DevExpress.XtraEditors.Controls.LookUpColumnInfo("Port", 60, "Port")});

lue.PopupFormMinSize = new System.Drawing.Size(500, 0);

lue.PopupWidth = 500;

#endregion

//LookUpEdit值改变后触发

lue.EditValueChanged += lue_EditValueChanged;

//下拉框选中值后,需要进行转换

lue.ParseEditValue += lue_ParseEditValue;

//指定该列控件

e.RepositoryItem = lue;

break;

}

}

2.选择RepositoryItemLookUpEdit的值时进行的处理。

void lue_EditValueChanged(object sender, EventArgs e)

{

DevExpress.XtraEditors.BaseEdit edit = gridView.ActiveEditor;

switch (gridView.FocusedColumn.FieldName)

{

case"DEPOT"://堆场列

gridView.SetFocusedRowCellValue(gridView.Columns["DEPOT"], edit.EditValue);

break;

}

}

3.//grid中的下拉框必须要处理一下,不然会报(对象必须实现iconvertible)错误

void lue_ParseEditValue(object sender,

DevExpress.XtraEditors.Controls.ConvertEditValueEventArgs e)

{

if (e.Value != null)

e.Value = e.Value.ToString();

else

e.Value = "";

e.Handled = true; }

DevExpress控件之主题

DevExpress控件之主题 DevExpress控件的主题不仅多种多样,而且非常美观大方,以对完美观念不强的我们绝对是个惊喜,当然了,对于我们的用户也是一个福音,因为他们再对不用抱怨我人软件界面是如何的粗造了。 l 如何打造美丽的界面? l 如何快速的更换漂亮的主题? l 如何快速的使用类似于Offcie2007的操作面板? ...... 本节课程将一一解答,带您进入美轮美奂的DevExpress世界! 1. 如何建造可换主题的窗口程序 当我们打开或新建一个“Windows程序”,系统默认会有一个From,名称为From1。请注意,此时的”Form1”继承的是Windows自带的Form,即”System.Windows.Forms”。而这个Form是不会应用DevExpress的主题样式的。 那么我们怎么样才可以让Form应用这些样式呢? 当我们安装完DevExpress控件包之后,在添加新项窗口中我们会看到多出的几项:如图: 分别是:DevExpress Form v9.1、DevExpress RibbomForm v9.1和DevExpressUsercontrol v9.1,其中“v9.1”是版本号。 当我们在新建“Form”时,选择DevExpress Form为模板,就可以应用DevExpress的漂亮主题了。此时,From继承的是“DevExpress.XtraEditors.XtraForm”。默认情况下,系统主题有:* Caramel * Money Twins * Lilian * The Asphalt World * iMaginary * Black * Blue 这几种主题,具体效果自己写个例子看看吧! 但DevExpress提供了更多的主题,我们如果应用的话,必须添加以下引用: DevExpress..OfficeSkins.v9.1; DevExpress.BonusSkins.v9.1; 除此之外,必须在“Program.cs”文件在添加如下代码: [c-sharp] view plaincopy https://www.sodocs.net/doc/8210265316.html,erSkins.OfficeSkins.Register(); https://www.sodocs.net/doc/8210265316.html,erSkins.BonusSkins.Register(); Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); if (!DevExpress.Skins.SkinManager.AllowFormSkins) DevExpress.Skins.SkinManager.EnableFormSkins(); Application.Run(new frmMain()); 其中“OfficeSkins”中的主题有:

【精选】DevExpress控件汉化

基础知识学习系列 本地化DevExpress控件

版本控制 修改记录说明

1.文档导读 本文档以颜色区分内容的重要性和不同性,阅读本文档时请注意以下事项: 1.红色部分表示需要注意的重点内容;(加粗的尤甚) 2.蓝色部分表示相应于前版本新增的内容; 3.紫色部分表示跟前版本不同的内容; 本文档的变动历史都记录在“修改记录说明”一节。本文通过用到英文单词的地方,也是本人理解不是很深刻的地方,如果有什么好的建议,欢迎指正。不胜感激!我的email:sendreams@https://www.sodocs.net/doc/8210265316.html,。 2.基础知识 2.1.N et Framework知识 在Visual Studio .NET里面,本地化资源,比如字符串、图片之类的,都是跟culture(语言文化)有关,这些东西都是存储在单独的文件中并且根据相应的culture设定进行加载,如果要了解怎样加载你自己的本地化资源,那就需要了解资源文件的组织结构关系: https://www.sodocs.net/doc/8210265316.html,在加载资源文件的时候,它选取资源文件的方式,可以说是按照自下而上的方式,写过程序的都 知道继承的概念,有父类之类之说,可以说父类就是上层建筑,也就是那些伟大的领导们,而子类就是广大百姓了,呵呵,这个比喻不是很恰当,纯粹娱乐。Framework里面,父类就对应english,也是唯一的一种没有自身资源文件的,其实也并不是没有,而是存在main assembly里面。 2.在父类之下,可以有多种多样的culture的资源,我们说的culture是指语言文化并不是指windows控 制面板中的区域,比如,法国(French简写为“fr”)就是一个culture。其实english简写成“en”也是一个culture,只不过它比较特别,没办法,谁让现在的it世界是在老外统治着呢。 3.在这些culture之下,又有一些特定区域的culture,这些特定区域的culture,它有两点属性,不仅包含 语言文化,还加上区域特色,就好比中国有中国的文化,而福建还有它自身的区域性文化。偶们的官方语言是普通话,而我们福建还有N多种方言,鄙人不才,也就只会一种咱们家乡的本地话,在同事们听来,有点外星人嫌疑。老美也有老美的文化,有美式英语和英式英语区分,今天刚看了“姨妈的后现代生活”,就是因为她只会英式英语而不追逐美式英语这个大潮流而被解聘了。 在一个程序试图加载一个资源的时候,好比一个字符串,并且还没有找到,它就会沿着上面所说的层次结构一层一层的往上爬,直到找到为止。如果仕途有这么顺利那就好了,呵呵。 在进行本地话的过程中,最好的方法是建立相对通用的资源文件,也就是上文中第2条中的而不是第3条中,就好比我们在汉化的过程中,一般汉化成普通话,而不是汉化成福建话,或者是台湾话。也就是越通用越好,假设你有一个French Belgian ("fr-BE")的资源文件,而且它的直接上级就立马到了最高级english,那么当你的区域设置改变成French Canadian,系统降会寻找对应的"fr-CA"资源,而此时已经无法找到,就会选用处于main assambly中的资源,也就是英文。下图显示的就是你不想看到的场景。

DEVEXPRESS 控件学习总结

1、Navigation & Layout 1.1 Bar Manager 如果想在窗体或用户控件(user control)上添加工具条(bars)或弹出菜单(popup menus),我们需要把一个不可见的控件(component)BarManager(Navigation&Layout)拖放到这个窗体或用户控件上。这个控件维护工具条在窗体上的布局,处理用户的行为 (processes an end-user's actions),提供一些定制功能等等。这个控件维护工具条、工具条项、工具条项目录这三者的集合 (It maintains the collections of bars,bar items and bar item categories.)。所以我们可以使用bar manager的一些方法去添加、删除、访问这些工具条元素。 注意:1)一个窗体上只能放置一个bar manager控件。 2)由于BarManager控件与RibbonControl控件可能会彼此冲突,所以不推荐在同一个窗体或用户控件上同时使用工具条和Ribbon控件。 当把BarManager添加到一个窗体或用户控件上后,我们就可以使用上下文菜单(context menus)、bar manager的定制窗口或它的设计器来创建工具条和工具条命令(bar commands)了。 相关控件属性 1.1.2、Toolbars 工具条是一个可视的控件,它用来显示各个项目链接。我们可以在工具条内显示由XtraBars库提供的任意项目链接,比如:按钮(buttons),静态文本(static text),子菜单(submenu)、编辑器(editors)等等。 1.1.3、 Bar Items 为了把多种元素(比如按钮,子菜单,标签,编辑器等)添加到工具条和菜单,我们需要创建合适的bar items。一个bar item是一个实现了特定功能的非可见对象。它定义了一个相应的元素如何显示在屏幕上,并决定了对鼠标单击事件的相应。 我们可以使用bar manager的Customize窗体上的Commands页来创建bar items。为了在逻辑上组织这些item,我们经常将它们分类。该窗体的左侧面板里显示了有效的目录,右侧面板显示了属于当前选中目录的各个bar item。选中一个bar item可以在属性窗口看到其属性。 1.1.4、Popup Menus 使用弹出菜单(popup menus),我们可以在控件上显示上下文选项或命令。弹出菜单是一个显示了特定项的窗体,用户可以选择这些项以执行相应的操作。使用PopupMenu控件就可以在我们的应用程序中使用弹出菜单。 通过BarManager的“名称”+“上的PopupContenxtMenu”属性绑定PopuMenus控件 注意:

DevExpress控件的GridControl控件小结

目录 1. DevExpress控件组中的GridControl控件不能使横向滚动条有效。 (2) 2. 使单元格不可编辑。 (2) 3. 没有下拉滚动条事件怎么办? (2) 4. 获取选定行,指定列单元格的内容 (2) 5. 去除"Drag a Column Header Here To Group by that Column" (3) 6. 在gridcontrol中添加checkbox复选框 (3) 7. 单元格合并问题 (4) 8. gridView 奇行与偶行交替变色 (4) 9. girdView在第一列显示行号 (4) 10. 选中某列进行排序时,如何让该列高亮显示 (5) 11. XtraGrid冻结列 (5)

(由于开始使用DevExpress控件了,所以要点滴的记录一下) 1.DevExpress控件组中的GridControl控件不能使横向滚动条有效。 现象:控件中的好多列都挤在一起,列宽都变的很小,根本无法正常浏览控件单元格中的内容。 解决: gridView1.OptionsView.ColumnAutoWidth属性是true,即各列的宽度自动调整,你把它设成false,就会出现了。 2.使单元格不可编辑。 gridcontrol -->gridview -->OptionsBehavior -->Editable=false 3.没有下拉滚动条事件怎么办? 现象:因为需要加载大数据量数据,所以不能一次把所有数据读入datatable进行绑定,所以决定在用户进一步浏览数据时进行数据的实时加载工作,就是每当用户拉动滚动条时,多加载一些数据进入datatable.没有找到合适的滚动条事件,于是用这个事件代替了,非常合适我的需求. TopRowChanged事件. 4.获取选定行,指定列单元格的内容 private string GetSelectOID() { int[] pRows = this.gridView1.GetSelectedRows(); if (pRows.GetLength(0) > 0) return gridView1.GetRowCellValue(pRows[0], mOIDFiledName).ToString (); else return null; } //mOIDFiledName为要获取列的列名

第三方控件(DevExpress)使用大全【个人开发过程中整理收集】

第三方控件使用大全 【张杰章开发过程中整理】 一、ComboBoxEdit 1、如何使其不可编辑 TextEditStyle 设置为:DisableTextEditor 2、如何设置鼠标为手形 Cursor 设置为:Hand 二、GridControl 1、如何解决单击记录整行选中的问题 View->OptionsBehavior->EditorShowMode 设置为:Click 2、如何新增一条记录 (1)、gridView.AddNewRow() (2)、实现gridView_InitNewRow事件 3、如何解决GridControl记录能获取而没有显示出来的问题 gridView.populateColumns(); 4、如何让行只能选择而不能编辑(或编辑某一单元格) (1)、View->OptionsBehavior->EditorShowMode 设置为:Click (2)、View->OptionsBehavior->Editable 设置为:false 5、如何禁用GridControl中单击列弹出右键菜单 设置Run Design->OptionsMenu->EnableColumnMenu 设置为:false 6、如何隐藏GridControl的GroupPanel表头 设置Run Design->OptionsView->ShowGroupPanel 设置为:false 7、如何禁用GridControl中列头的过滤器 过滤器如下图所示: 设置Run Design->OptionsCustomization->AllowFilter 设置为:false 8、如何在查询得到0条记录时显示自定义的字符提示/显示 如图所示:

DevExpress控件使用使用技巧小结

DevExpress控件使用使用技巧小结 零零散散的先总结一下吧 1.TextEditor(barEditItem)取文本 string editValue = barEditItem1.EditValue.ToString(); //错误,返回null string editValue = ((DevExpress.XtraEditors.TextEdit)barEditItem).EditValue.ToString(); //正确,返回文本框内容https://www.sodocs.net/doc/8210265316.html,boBoxEdit(barEditItem)添加Item string item = "comboboxItem1"; ((DevExpress.XtraEditors.Repository.RepositoryItemComboBox)this.barEd itItem.Edit).Items.Add(item);https://www.sodocs.net/doc/8210265316.html,boBoxEdit(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问题 while (this.ribbonControl.Pages.Count > 0) { ribbonControl.Pages.Remove(ribbonControl.Pages[0]); //调试正常,运行报异常 } while (this.ribbonControl.Pages.Count > 0) {

devexpress控件学习总结z

devexpress控件学习总结z 1、Navigation & Layout 1.1 Bar Manager 如果想在窗体或用户控件(user control)上添加工具条(bars)或弹出菜单(popup menus),我们需要把一个不可见的控件(component)BarManager(Navigation&Layout)拖放到这个窗体或用户控件上。这个控件维护工具条在窗体上的布局,处理用户的行为(processes an end-user's actions),提供一些定制功能等等。这个控件维护工具条、工具条项、工具条项目录这三者的集合(It maintains the collections of bars,bar items and bar item categories.)。所以我们可以使用bar manager的一些方法去添加、删除、访问这些工具条元素。 注意:1)一个窗体上只能放置一个bar manager控件。 2)由于BarManager控件与RibbonControl控件可能会彼此冲突,所以不推荐在同一个窗体或用户控件上同时使用工具条和Ribbon控件。 当把BarManager添加到一个窗体或用户控件上后,我们就可以使用上下文菜单(context menus)、bar manager 的定制窗口或它的设计器来创建工具条和工具条命令(bar commands)了。 相关控件属性

1.1.2、Toolbars 工具条是一个可视的控件,它用来显示各个项目链接。我们可以在工具条内显示由XtraBars库提供的任意项目链接,比如:按钮(buttons),静态文本(static text),子菜单(submenu)、编辑器(editors)等等。 1.1.3、Bar Items 为了把多种元素(比如按钮,子菜单,标签,编辑器等)添加到工具条和菜单,我们需要创建合适的bar items。一个bar item是一个实现了特定功能的非可见对象。它定义了一个相应的元素如何显示在屏幕上,并决定了对鼠标单击事件的相应。 我们可以使用bar manager的Customize窗体上的Commands页来创建bar items。为了在逻辑上组织这些item,我们经常将它们分类。该窗体的左侧面板里显示了有效的目录,右侧面板显示了属于当前选中目录的各个bar item。选中一个bar item可以在属性窗口看到其属性。 1.1.4、Popup Menus 使用弹出菜单(popup menus),我们可以在控件上显示上下文选项或命令。弹出菜单是一个显示了特定项的窗体,用户可以选择这些项以执行相应的操作。使用PopupMenu控件就可以在我们的应用程序中使用弹出菜单。

DevExpress控件使用汇总

一、GridControl使用详解 1、原汁原味的表格展示 插件所在位置

使用时拖拽过来,如下所示即使拖拽过来原封不动的样子:

在程序中写入构建一个表格的代码: 1. private DataTable InitDt() 2.{ 3.DataTable dt = new DataTable("个人简历"); 4.dt.Columns.Add("id",typeof(int)); 5.dt.Columns.Add("name", typeof(string)); 6.dt.Columns.Add("sex", typeof(int)); 7.dt.Columns.Add("address", typeof(string)); 8.dt.Columns.Add("aihao", typeof(string)); 9.dt.Columns.Add("photo", typeof(string)); 10.dt.Rows.Add(new object[] { 1, "张三", 1, "东大街6号", "看书", "" }); 11.dt.Rows.Add(new object[] { 1, "王五", 0, "西大街2号", "上网,游戏", "" }); 12.dt.Rows.Add(new object[] { 1, "李四", 1, "南大街3号", "上网,逛街", "" }); 13.dt.Rows.Add(new object[] { 1, "钱八", 0, "北大街5号", "上网,逛街,看书,游戏", "" }); 14.dt.Rows.Add(new object[] { 1, "赵九", 1, "中大街1号", "看书,逛街,游戏", "" }); 15.return dt; 16.} 书写gridControl1绑定数据方法: 1. private void BindDataSource(DataTable dt) 2.{ 3.//绑定DataTable 4.gridControl1.DataSource = dt; 5.//绑定DataSet

DevExpress控件学习

DevExpress控件学习 1.MDI窗体 ?首先需要把父窗体设置为MDI容器: ?在主窗体放一个xtraTabbedMdiManager,如: ?设置MDI窗体样式; 子窗体关闭按钮的样式 多个标签的时候,如何显 示标签导航栏 MDI子窗体标签栏的位置 ?新建一子窗体,可以是DevExpress的也可以是VS自带的(VS自带的最好改下背景色为如下配置,否则会主子窗体颜色不搭配。 ) ?调用子窗体的代码如下: ///

///打开子窗体 /// /// privatevoid OpenChildForm(Form frm) { int iCount = 0; foreach (var mdiChild inthis.MdiChildren) {

if (mdiChild.Text == frm.Text) { mdiChild.Activate(); iCount++; } } if (iCount> 0) return; frm.MdiParent = this; frm.Show(); } privatevoid btnMqClient_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { Text = e.Link.Item.Caption; if (e.Link.Item.Tag != null) { object ooo = e.Link.Item.Tag; } FrmOutLook frm = new FrmOutLook(); OpenChildForm(frm); } ?如果不想关闭子画面,则在子画面窗体上选择属性ControlBox关闭: 2.OutLook导航条用法: 选中navBarGroup1,在属性栏中选择GroupStyle,可以调整图标显示样式。 3.Ribbon编辑器 ?去掉Win7透明窗体,保持所有情况下显示风格都一致。 在Ribbon主窗体中选择属性AllowFormGlass,会在Win7风格时增加一个透明框框,很丑,所以我选择了False

Delphi中使用Devexpress TcxPagecontrol控件

Delphi中使用TcxPagecontrol控件建立一个VCL应用程序,界面如下图 1.动态创建cxTabsheet的代码如下: procedure TForm1.cxButton1Click(Sender: TObject); var newTabsheet:TcxTabSheet; i:Integer; begin for i := 1 to 5 do begin newTabsheet:=TcxTabSheet.Create(self); newTabsheet.Caption:=i.ToString()+ ' Tabs'; newTabsheet.Tag:=i; newTabsheet.PageControl:=cxPageControl1; newTabsheet.Visible:=True; end; end; 上述代码将动态创建5个cxTabsheet,执行结果如下 2.动态关闭当前激活的cxTabsheet,代码如下: procedure TForm1.cxButton2Click(Sender: TObject); begin cxPageControl1.ActivePage.Free; end;

3.动态指定关闭cxTabsheet,代码如下: procedure TForm1.cxButton3Click(Sender: TObject); begin //关闭第2个TABSHEET cxPageControl1.Pages[1].Free; end; 4.动态指定激活cxTabsheet,代码如下: procedure TForm1.cxButton4Click(Sender: TObject); var i:Integer; begin for i := 0 to cxPageControl1.PageCount-1 do begin if cxPageControl1.Pages[i].Tag =1 then begin cxPageControl1.ActivePage:= cxPageControl1.Pages[i]; Exit; end; end; end; 5.下面演示如何在cxTabsheet动态加载窗体或控件: 新增加一个button控件,另外再新建一个VCL窗体—FORM2,编写如下代码

DevExpress控件属性说明

TcxGrid Align 设置控件的排列方式。 alBottom:相对于父容器为底端对齐排列。 alClient:相对于父容器为剩余部分完全覆盖排列。 alCustom:相对于父容器为自定义对齐排列。 alLeft:相对于父容器为左端对齐排列。 alNone:默认对齐排列。 alRight:相对于父容器为右端对齐排列。 alTop:相对于父容器为顶端对齐排列。 AlignWithMargins 设置控件与其父容器之间的间隙。 Anchors 设置控件的对齐方式。 akLeft 当其父容器大小改变时,控件左端相对于父容器左端的位置不变。 akTop 当其父容器大小改变时,控件顶端相对于父容器顶端的位置不变。

akRight 当其父容器大小改变时,控件右端相对于父容器右端的位置不变。 akBottom 当其父容器大小改变时,控件底端相对于父容器底的位置不变。BevelEdges 设置控件的是否显示斜面。 beLeft 控件左端。 beTop 控件顶端。 beRight 控件右端。 beBottom 控件底端。 BevelInner 设置斜面内部的样式。 bvLowered:下凹式。 bvNone:无样式。 bvRaised:凸起式。

如有你有帮助,请购买下载,谢谢!bvSpace:间隔式。 BevelKind 设置斜面样式。 bkFlat:平坦式。 bkNone:无样式。 bkSoft:柔和式。 bkTile:凸起式。 BevelOuter 设置斜面外部样式。 bvLowered:下凹式。 bvNone:无样式。 bvRaised:凸起式。 bvSpace:间隔式。 BevelWidth 设置斜面宽度。 BorderStyle 设置边框样式。 cxcbsDefault:默认样式。 cxcbsNone:无样式。 BorderWidth 设置边框宽度。

使用DevExpress的WebChartControl控件绘制图表(柱状图、折线图、饼图)

使用DevExpress的WebChartControl控件绘制图表(柱状图、折线图、饼图) WebChartControl是DevExpress控件群下的一个Web图表控件,它使用非常的方便,生成的图表也相当的漂亮。 先贴出几张WebChartControl生成的图表: Web页面代码WebChartControl.aspx: View Code 1 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebChartControl.aspx.cs" Inherits="DevDemo.WebChartControl" %> 2 3<%@ Register Assembly="DevExpress.XtraCharts.v11.2.Web, Version=11.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" 4Namespace="DevExpress.XtraCharts.Web" TagPrefix="dxchartsui" %> 5 6<%@ Register assembly="DevExpress.XtraCharts.v11.2, Version=11.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" namespace="DevExpress.XtraCharts" tagprefix="cc1" %> 7 8

DevExpress基础验证控件

DevExpress 的验证控件 分类:DevExpress2012-08-09 23:44 975人阅读评论(1) 收藏举报1. DXErrorProvider:错误提示控件,用法类似于VS的winform控件中的ErrorProvider。 下面为一个使用实例,验证文本框输入是否为数字: ①.添加System.Text.RegularExpressions引用。 ②.在设计视图上拖一个textEdit控件textEdit1。 ③.验证输入是否为数字,不是显示错误提示。 [html]view plaincopyprint? 1.public bool IsNumeric(string sNumeric) 2.{ 3. return (new Regex("^[\\+\\-]?[0-9]*\\.?[0-9]+$")).IsMatch(sNumeric) ; 4.} 5.private void simpleButton1_Click(object sender, EventArgs e) 6.{ 7. InitValidationRules(); 8. dxErrorProvider1.ClearErrors(); 9. if (IsNumeric(this.textEdit1.Text)==false) 10. { 11. dxErrorProvider1.SetError(textEdit1, "输入要为数字! ");//DXErrorProvider.SetError(验证的控件,错误提示) 12. } 13.} 2.DxValidationProvider:验证控件,类似于VS的web控件中的"验证控件" 下面为DxValidationProvider使用实例: ①.添加DevExpress.XtraEditors.DXErrorProvider引用。 ②.在设计视图上拖两个textEdit控件textEdit2和textEdit3。 ③.实现验证textEdit2不可为空,textEdit3输入值在0-100之间: [csharp]view plaincopyprint? 1.private void InitValidationRules() 2.{ 3. ConditionValidationRule notEmptyValidationRule = new ConditionVal idationRule(); 4. notEmptyValidationRule.ConditionOperator = ConditionOperator.IsNo tBlank;//验证条件 5. notEmptyValidationRule.ErrorText = "此栏不能为空!";//提示信息

DevExpress的10个使用技巧

DevExpress 的 10 个使用技巧
DevExpress 是非常主流的.NET 控件,目前全世界和中国都用很多用户使用,不过由 于是英文版,初次接触的同学可能会觉得困难,这里就总结 DevExpress 常见的 10 个使 用技巧。 1.TextEditor(barEditItem)取文本
以下是代码片段: string editValue = barEditItem1.EditValue.ToString(); //错误, 返回 null string editValue = ((DevExpress.XtraEditors.TextEdit)barEditItem).EditValue.ToString(); //精确,返回文本框内容 DevExpress 使用技巧
https://www.sodocs.net/doc/8210265316.html,boBoxEdit(barEditItem)添加
以下是代码片段: Item string item = "comboboxItem1"; ((DevExpress.XtraEditors.Repository.RepositoryItemComboBox)this.barEd itItem.Edit).Items.Add(item);
https://www.sodocs.net/doc/8210265316.html,boBoxEdit(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 使用技巧)

优秀的菜单控件DevExpress Bar使用初探

优秀的菜单控件DevExpress Bar使用初探 前一阵子在做项目时,用到了Develper Experss Inc. 的DevExpress Bar控件,感觉它真是一个好东西,可以完全取代Delphi现有的Menu控件和ToolBar控件,其功能也是第三方控件中的佼佼者。故在此写一点点自己的所得和体会,希望能够对各位朋友有所帮助。 DevExpress Bar安装后,控件栏新添了ExpressBars页: 我们使用的主要是第二个dxBarManager控件。这里,以建立一个含有菜单和快捷工具栏的应用程序为例。 新建工程,将其放置到Form1上如图: 双击该控件,出现设置窗口(如下图)。所有的设置均是在该窗口中完成的。 可以看到,设置窗口分成若干个Tab页面,来进行不同的设置。Toolbars页面的目的是设置不同的工具条。由于我们要建立菜单和快捷工具栏,所以点击“New”(如图),加入两个ToolBar,分别命名为MenuBar和FastBar。 加入后,设置窗口如图:

可以注意到,加入工具条后,Form1上出现了两个浮动工具条。这就是我们刚刚加入的,它具有浮动的功能,并且初始状态时浮动状态: 将鼠标指向工具条,按住左键并移动,可以将其停靠到Form的任一边缘。我们将MenuBar停靠到最上方,FastBar停靠到MenuBar的下方: 这只是一个空壳子。下面我们加入菜单:双击dxBarManager控件,打开Commands页,在右侧右键点击鼠标,出现如图弹出菜单。选择其中的Add。

在弹出的窗口(如图)中,Type选择TdxBarSubItem,这是一个能够放置其它种类按钮的容器。Caption置为标题。这里设成“文件” 确定后,可以看到其加入了Command:中 但是,它并没有加入到Form上。用鼠标左键点中上图中的“文件”,按住不放,将其

DevExpress控件开发常用要点(项目总结版)

[https://www.sodocs.net/doc/8210265316.html,教程]DevExpress控件开发常用要点(项目总结版) 使用DevExpress控件来做项目开发已经有很长一段时间了,在摸索开发到客户苛刻要求的过程中,其中碰到过很多问题需要解决的,随着一个个问题的解决,也留下很多对DevExpress控件的使用经验及教训,综合设计到的多个项目的问题,对这些开发常用的要点进行总结,方便别人也方便自己。提供这些解决方法,一个可以快速应用到项目中,二个也可以作为对界面开发的更高要求对待自己的项目,使得自己的东西更加完美,更加受欢迎。 1、GridControl控件的数据显示的样式控制 如上两图所示,我们有时候需要控制列表访问过的颜色变化,或者是时间显示格式等内容,这个时候设置GridView的RowCellStyle即可实现,如下所示。 this.gridView1.RowCellStyle += new DevExpress.XtraGrid.Views.Grid.RowCellStyleEventHandler(g ridView1_RowCellStyle); void gridView1_RowCellStyle(object sender, DevExpress.XtraGrid.Views.Grid.RowCellStyleEventArgs e) { if (e.Column.FieldName == "PublishType")

{ if (e.CellValue != null && e.CellValue.ToString() == "中介") { e.Appearance.BackColor = Color.DeepSkyBlue; e.Appearance.BackColor2 = Color.LightCyan; } } if (e.Column.FieldName == "PublishTime") { e.Column.DisplayFormat.FormatString = "yyyy-MM-dd HH:mm:ss"; } if (e.Column.FieldName == "Title") { string id = this.winGridViewPager1.gridView1.GetRowCellDisplayText(e. RowHandle, "Id"); if (historyDict.ContainsKey(id)) { e.Appearance.BackColor = Color.DeepSkyBlue; e.Appearance.BackColor2 = Color.LightCyan; } } } 2、在LayoutControl布局中固定控件宽度 固定宽度后的真实效果。

DevExpress控件常用属性讲解

DEV控件讲解 Dev基本控件介绍 基本控件分两大类:BaseEdit和BaseStyleControl,都继承BaseControl,它继承ControlBase,它继承Control。 BaseStyleControl分类的控件,可设置自身特有的样式(ButtonStyle, HighlightedItemStyle等)。BaseEdit分类的控件,直接可以通过EditValue属性获取当前控件的值;Properties属性获取控件特有属性。 Dev基础控件继承关系图: BaseStyleControl介绍: :显示文本内容,T ext属性 BaseButton:(ButtonStyle) :简单按钮,Click事件 :选中按钮,开/关效果,用Checked属性判断当前按钮状态 :下拉按钮,下拉弹出框DropDownControl可绑定菜单(PopupMenu),也可绑定一个面板容器(PopupControlContainer),但是PopupControlContainer必须指定 一个BarManager状态条控件,才可以达到弹出效果 BaseListBoxControl:(HighlightedItemStyle) :文本项集合控件,MultiColumn和ColumnWidth属性可控件一行显

示多个选项,SelectedIndexChanged事件下SelectedItem属性来判断选择哪项 BaseCheckedListBoxControl: :复选项集合控件,需遍历Items下所有选项的状态, 来判断当前选择的是哪些项,选择哪一项事件用ItemClick事件 BaseImageListBoxControl: :图片项集合控件,需配合ImageCollection控件一起使用BaseEdit介绍: :单选组控件,在Properties下的Items添加每个选项,直接用EditValue可获取当前选择的是哪项,Columns是一行显示几个选项 :图片显示控件,SizeMode属性控件图片显示模式,ShowMenu是否显示图片上的右键菜单(菜单自带剪切,拷贝,粘贴,删除,加载和保存功能) :复选控件,一般多个选项用代替,其中CheckState属性的Indeterminate值表示部分选中状态 :滑动条控件,可设置Maximum最大值,Minimum最小值,SmallChange最小改变量,LargeChange大的改变量,Orientation显示方向 :范围滑动条控件,它的值是范围{Min=3,Max=8} :缩放滑动条控件,用法如 ProgressBarBaseControl: :滚动条控件,MarqueeAnimationSpeed滚动动画速度(毫秒),ProgressAnimationMode滚动方式(从头到尾或来回滚动),ProgressKind滚动方向 :进度条控件,ShowTitle显示当前的进度值,StartColor和EndColor设置起始结尾的颜色,需同时设置LookAndFeel属性下UseDefaultLookAndFeel 为false且Style不为Skin才生效,否则使用默认样式 :单行文本框控件,Mask设置正则表达式,DisplayFormat设置显示的格式,EditFormat设置编辑时的格式 :多行文本框控件,ScrollBars设置滚动条方向,支持自动换行,支持回车,高级文本编辑可控件 :按钮编辑控件(常用于选择本地文件ReadOnly),Buttons属性可添加

相关主题