DEV控件GridControl的分组和Summary C#
- 格式:wps
- 大小:105.50 KB
- 文档页数:3
devexpress gallerycontrol 用法一、引言DevExpress GalleryControl 是一款强大的图像展示控件,适用于在应用程序中展示大量的图像。
本文档将详细介绍 GalleryControl 的用法,包括其基本概念、安装和使用方法、属性设置、事件处理等。
二、基本概念1. GalleryControl:DevExpress GalleryControl 控件用于在应用程序中展示一组图像,用户可以通过控件的导航器浏览图像。
2. 图像集合:GalleryControl 需要一个图像集合来展示图像,这个集合可以是本地文件、网络资源或其他数据源。
三、安装和使用方法1. 下载和安装:从 DevExpress 官方网站下载 GalleryControl 控件,并按照安装向导进行安装。
2. 添加控件到项目:将 GalleryControl 控件添加到您的Visual Studio 项目中。
3. 配置图像集合:通过编程或数据绑定方式将图像资源添加到GalleryControl 中。
4. 设置属性:您可以设置 GalleryControl 的各种属性,如标题、背景色、边框颜色等。
5. 运行程序:构建项目并运行,检查 GalleryControl 是否正常工作。
四、属性设置以下是 GalleryControl 的一些常用属性及其说明:1. Images:用于设置图像集合。
2. AllowPaging:控制是否允许分页浏览图像。
3. ShowNavigationButtons:是否显示导航器按钮。
4. ViewType:指定展示视图,如 SingleView 或 ZoomView。
5. BorderStyle:设置控件边框样式。
6. ScrollBarsEnabled:是否启用滚动条。
7. NavigateButtonsVisibility:导航器按钮的可见性。
8. Title:控件的标题。
devexpress winform用法
DevExpress是一家软件开发工具和组件供应商,他们提供了
一套强大的WinForms控件,帮助开发人员更快、更方便地创
建Windows桌面应用程序。
以下是一些DevExpress WinForms控件的常见用法:
1. GridControl(网格控件):GridControl是一个用于显示和编辑表格数据的功能强大的控件。
你可以使用它来显示数据库的数据,进行快速过滤、排序和分组,还可以对数据做出修改。
2. XtraEditors(编辑器控件):DevExpress提供了一系列编辑
器控件,用于创建各种输入界面。
比如TextEdit(文本输入)、ComboBoxEdit(下拉框选择)、DateEdit(日期选择)等。
你
可以方便地为这些控件设置各种属性和样式。
3. XtraCharts(图表控件):DevExpress的图表控件支持多种
图表类型和布局,你可以使用它创建各种数据统计和可视化报表。
4. XtraReports(报表控件):XtraReports是一个强大的报表生成引擎,你可以使用它创建各种复杂的打印和预览报表。
5. XtraNavBar(导航栏控件):XtraNavBar是一个导航栏控件,可以帮助你创建易于使用的导航界面。
这只是DevExpress WinForms控件中的一小部分,还有很多其
他控件可以帮助你创建更丰富和交互性的应用程序。
在使用DevExpress控件时,你可以使用设计器或代码来配置和定制
控件的外观和行为。
同时,DevExpress还提供了丰富的文档、示例和支持社区,方便开发人员学习和解决问题。
Dev控件研究(一)gridcontrol简单使用最近,工作安排,要我研究dev控件。
项目没开始,被要求搞研究。
界面dev的控件表现效果及实用功能都是蛮方便和强大的。
gridcontrol中有5种view 型式,普通的是gridview,然后分别为cardview、BandedView、Advanced BandedView、LayoutView;共5种。
gridview跟WinForm自带的差不多,有一些高级特性,比如说可以把某一列拿出来分组啊,之类的。
我这几天主要研究了这三个:LayoutView、BandedView、AdvancedBandedView。
LayoutView实现的视觉效果可以说很。
炫~(我们做应用行业软件的。
项目组长却要求这么炫的效果。
我觉得他是想不开。
)仔细看了dev的demo源代码,实际上这里只需要在gridcontrol 中的designer中的view组中把OptionView下的viewmode 设置成“Carousel”就达到这种“旋转木马”式的gridcontrol view 特效了。
关键部分还是细节,layoutView1.OptionsCarouselMode.PitchAngle 这个属性决定“旋转木马”的pitch angle 螺距角; 螺旋角; 螺旋升角; 俯仰角; 倾角; 节锥半角【主科技词汇】。
Roll Angle 属性决定着倾侧角度~~其它的属性都好说。
然后就是columns的设置问题了,设置column的长高啊什么的,现在还没完全弄明白~~。
有时候设置了,coumn没变。
反正要想真正达到图片中的那种效果,得很细心的搞一下才行。
将其设置为图片类型的时候,是比较痛苦的事情。
我开始以为在给gridcontrol的datatable 里面设置一列为路径string 就够了~结果试了半天(没办法,源码里面调用的是xml文件!~~图片是Int64类型的,刚开始没仔细看。
Dev 控件之:datacontrol 分组,合计Summary:(Footer summary) (row footer summary)(Row summary) 设置1.样式图:图一:分组图2:小计合计2.分组:如图一所示DevExpress.XtraGrid.Columns.GridColumn column = gridView1.Columns["流水号"];//拿到要分组的列if (column == null) return;column.GroupIndex = 0; //未分组情况下列的GroupIndex为-1,所有都是一个组3.(Footer summary)总体合计:也就是图2表的右下角利润合计代码如下:DevExpress.XtraGrid.Columns.GridColumn col_Profit = gridView1.Columns["参考利润"];gridView1.Columns["参考利润"].SummaryItem.SummaryType = DevExpress.Data.SummaryItemType.Sum;gridView1.Columns["参考利润"].SummaryItem.DisplayFormat = "利润合计:{0:c2}";4.(row footer summary)小计的出现:或许是本人愚钝,小计的出现还是费了点波折:注:下面是dev帮助文档提供的资料,但这是直接从界面绑定数据的作法Add summary items by clicking Add, and customize them.A single item is represented by a GridGroupSummaryItem class object, which is a GridSummaryItem class descendant. It provides the following main properties.- GridSummaryItem.SummaryType- Specifies the type of summary to calculate against groups.- GridSummaryItem.FieldName - Specifies the field against which the summary must be calculated.- GridGroupSummaryItem.ShowInGroupColumnFooter - Specifies where to display group summary values - in group rows or in a specific column's footer.- GridSummaryItem.DisplayFormat - Allows you to customize the display format of group summary values.Here we use the GridSummaryItem.DisplayFormat property for demonstration purposes. To learn more about summary value formats, see Format Summary Values.如果您的数据源是从程序中绑定的,或许下面的内容对您有用:GridGroupSummaryItem item1 = new GridGroupSummaryItem();item1.FieldName = "参考利润;item1.SummaryType = DevExpress.Data.SummaryItemType.Sum;item1.DisplayFormat = "利润小计: {0:c2}";//格式item1.ShowInGroupColumnFooter = col_Profit;//这句就是给groupcolumnfooter加上小计 col_Profit在上文代码(总计合计)中有gridView1.GroupSummary.Add(item1);5.(row summary)还有就是row summary哪一行中能很明显的给人一个总计啊.平均值啊等等的实现如图:具体代码如下::GridGroupSummaryItem item2 = new GridGroupSummaryItem();item2.FieldName = "参考利润;item2.SummaryType = DevExpress.Data.SummaryItemType.Sum;item2.DisplayFormat = "利润小计: {0:c2}";gridView1.GroupSummary.Add(item2);:GridGroupSummaryItem item = new GridGroupSummaryItem();item.FieldName = "ProductName";item.SummaryType = DevExpress.Data.SummaryItemType.Count;gridView1.GroupSummary.Add(item);。
DevExpress GridControl使用(一)1、如何解决单击记录整行选中的问题View->OptionsBehavior->EditorShowMode 设置为:Click2、如何新增一条记录(1)、gridView.AddNewRow()(2)、实现gridView_InitNewRow事件3、如何解决GridControl记录能获取而没有显示出来的问题gridView.populateColumns();4、如何让行只能选择而不能编辑(或编辑某一单元格)(1)、View->OptionsBehavior->EditorShowMode 设置为:Click(2)、View->OptionsBehavior->Editable 设置为:false5、如何禁用GridControl中单击列弹出右键菜单设置Run Design->OptionsMenu->EnableColumnMenu 设置为:false 6、如何隐藏GridControl的GroupPanel表头设置Run Design->OptionsView->ShowGroupPanel 设置为:false 7、如何禁用GridControl中列头的过滤器过滤器如下图所示:设置Run Design->OptionsCustomization->AllowFilter 设置为:false 8、如何在查询得到0条记录时显示自定义的字符提示/显示如图所示:方法如下://When no Records Are Being Displayedprivate void gridView1_CustomDrawEmptyForeground(object sender, Cust omDrawEventArgs e){//方法一(此方法为GridView设置了数据源绑定时,可用)ColumnView columnView = sender as ColumnView;BindingSource bindingSource = this.gridView1.DataSource as BindingS ource;if(bindingSource.Count == 0){string str = "没有查询到你所想要的数据!";Font f = new Font("宋体", 10, FontStyle.Bold);Rectangle r = new Rectangle(e.Bounds.Top + 5, e.Bounds.Left + 5, e.Bounds.Right - 5, e.Bounds.Height - 5);e.Graphics.DrawString(str, f, Brushes.Black, r);}//方法二(此方法为GridView没有设置数据源绑定时,使用,一般使用此种方法)if (this._flag){if (this.gridView1.RowCount == 0){string str = "没有查询到你所想要的数据!";Font f = new Font("宋体", 10, FontStyle.Bold);Rectangle r = new Rectangle(e.Bounds.Left + 5, e.Bounds.Top + 5, e.Bounds.Width - 5, e.Bounds.Height - 5);e.Graphics.DrawString(str, f, Brushes.Black, r);}}}9、如何显示水平滚动条?设置this.gridView.OptionsView.ColumnAutoWidth = false;10、如何定位到第一条数据/记录?设置this.gridView.MoveFirst()11、如何定位到下一条数据/记录?设置this.gridView.MoveNext()12、如何定位到最后一条数据/记录?设置this.gridView.MoveLast()13、设置成一次选择一行,并且不能被编辑this.gridView1.FocusRectStyle = DevExpress.XtraGrid.Views.Grid.DrawFocu sRectStyle.RowFocus;this.gridView1.OptionsBehavior.Editable = false;this.gridView1.OptionsSelection.EnableAppearanceFocusedCell = false;14、如何显示行号?this.gridView1.IndicatorWidth = 40;//显示行的序号private void gridView1_CustomDrawRowIndicator(object sender, RowIndic atorCustomDrawEventArgs e){if (.IsRowIndicator && e.RowHandle>=0){.DisplayText = (e.RowHandle + 1).ToString();}}15、如何让各列头禁止移动?设置gridView1.OptionsCustomization.AllowColumnMoving = false;16、如何让各列头禁止排序?设置gridView1.OptionsCustomization.AllowSort = false;17、如何禁止各列头改变列宽?设置gridView1.OptionsCustomization.AllowColumnResizing = false; DevExpress GridControl使用(二)EditorShowMode设置鼠标激活单元格编辑器的模式EnableAppearanceEvenRow允许偶数行应用界面设置(GridViewPrintAppearances)EnableAppearanceFocusedCell允许获得焦点的单格使用外观EnableAppearanceFocusedRow允许获得焦点的行使用外观EnableAppearanceHideSelection允许在控件失去焦点时,外观设置应用到选择的行上EnableAppearanceOddRow允许奇数行应用界面设置(GridViewPrintAppearances)EnableColumnMenu允许列头上的菜单EnableDetailToolTip允许明细上的提示出现EnableFooterMenu允许页脚上的菜单EnableGroupPanelMenu允许分组面板上的菜单EnableMasterViewMode允许显示视图的明细EnterMoveNextColumn回车键能移动单元格的焦点ExpandAllDetails打印时所有主行都展开ExpandAllGroups打印时所有分组的行都展开FixedLineWidth固定面板分隔器的宽度FocusLeaveOnTab如果在Grid中TAB键被禁止,是否在按下TAB键时将焦点移到下一个控件FocusRectStyle焦点框的样式Font字体FooterPanelHeight视图页脚的高度ForeColor前景色GdiCharSet 倾斜字符设置GenerateMember常规属性GradientMode背景梯度模式GroupDramMode分组行的显示模式GroupFooterShowMode分组页脚的显示模式GroupFormat分组行的格式GroupPanelText分组面板中的文本GroupRowHeight分组行的高度Halighment文本的水平对齐方式HeaderFilterButtonShowMode列头上的过滤按钮的显示模式HorzScrollStep水平滚动条的位移量HorzScrollVisibilly水平滚动条的出现设置HotkeyPrefix 热键前缀的是否显示Image背景图片Images图片集ImmediateUpdateRowPosition因为排序、分组和过滤设置造成行的数据被修改时,是否立即更新一行的位置IndicatorWidth行指示面板的宽度InvertSelection设置焦点的风格应用到获得焦点的单元格,还是获得焦点的那一行的所有单元格Italic 是否斜体Italic 是否斜体KeepFocusedRowOnUpdate当后台的数据记录变化时,保持焦点行的焦点KeepGroupExpandedOnSorting当数据进行排序时,保持行的扩展状态LayoutVersions布局的版本LevelIndent分组行和相邻分组级别的缩进MinBandPanelRowCount行中最小带头面板的高度(BandedGridView和AdvBand edGridView专有属性)Modifiers常规属性数据MRUColumnFilterListCount是否存放最近使用过的视图列的过滤项目MRUFilterListCount是否存放最近使用过的视图的过滤条件MRUFilterListPopupCount最近使用过的过滤列表中能显示的项目数MuiltiSelect允许多选行MuiltiSelectMode多选模式(多选行或多选单元格)(GridView和BandedGridView专有属性)Name 字体名称NewItemRowPosition设置新项目行的位置NewItemRowText新项目行中显示的文本Options界面选项OptionsBehavior 视图的行为选项OptionsCustomization访问视图的用户化操作OptionsDetail对视图的主要明细操作OptionsFilter视图的过滤操作OptionsHint视图的提示操作OptionsLayout视图的布局操作OptionsMenu选项菜单OptionsNavigation导航选项OptionsPrint打印选项OptionsSelection选择选项OptionsView视图选项PaintStyleName当前视图的着色样式的名字PreviewFieldName预览部分中要显示值的域名PreviewIndent预览文本的水平偏移量PreviewLineCount预览部分的文本的行数PrintBandHeader打印带的头PrintDetails打印明细PrintFilterInfo打印过滤面板PrintFooter打印页脚PrintGroupFooter打印分组的页脚PrintHeader打印列头PrintHorzLines打印水平的网络线PrintPreview打印预览的部分PrintVertLines打印垂直的网络线RemoveOldColumns恢复时存在于布局中的,但不存在于当前控件的列,将被丢弃或者加入到控件中RowAutoHeight每一行自动根据单元格的内容调整高度(GridView专用属性)RowHeight数据行中单元格的高度RowSepartatorHeight行间距ScrollStyle滚动条的样式ShowAllTableValuesInFilterPopup是否在下拉列表中显示所有记录的(唯一的)值,或者满足过滤标准的值ShowAutoFilterRow显示自动过滤行ShowBandHeaderHints显示表格带头被截去的内容(BandedGridView和AdvBande dGridView专有属性)ShowBands显示带的面板(BandedGridView和AdvBandedGridView专有属性)ShowBandsInCustomizationForm在用户窗体中显示带子(BandedGridView和Adv BandedGridView专有属性)ShowButtonMode编辑器按钮的显示模式ShowCellHints显示单元格被截去的内容ShowChildrenInGroupPanel视图的分组面板是否担当一个新加入的分组面板ShowColumnHeaderHints显示列头被截去的内容ShowColumnHeaders显示列头ShowDetailButtons在主行上显示"主—明细"的扩展按钮ShowDetailTabs显不Tab的明细ShowFilterPanelMode显示过滤面板ShowFooter显示视图的页脚ShowGroupedColumns显示分组列(GridView专用属性)ShowGroupPanel显示分组面板ShowHorzLines显示水平网格线ShowIndicator显示行指示器面板ShowPreview显示预览部分ShowPreviewLines显示预览线ShowvertLines显示垂直网格线设计Size字体大小SmartDetailExpand当详细视图扩展时,是否自动进行滚动,使该详细视图的所有行都显示出来SmartDetailExpandButtonMode设置"主—明细"扩展按钮的风格SmartDetailHeight(保留属性)SmartVertScrollBar设置是否能滚动视图到第一行和最后一行StoreAllOptions当布局进行存储或恢得时,控件所有的列/带(除了外观设置外)的设置都将被存储或恢得StoreAppearance存储或恢复控件的外观设置StoreDataSettings存储或恢复控件的分组、排序、过滤设置和摘要(汇总)StoreLayout能否存储或恢复布局StoreVisualOptions存储或恢复控件视觉选项(布局)Strikeout删除线SynchronizeClones是否克隆视图(通过视图克隆,使外观和数据的表现设置同步)TAB/SHIFT+TAB 移动焦点Tag常规属性外观TextOptions文本选项Trimming文本的整理方式Underline是否加下划线Unit字体设置的单位UseAdvVertNavigation使用高级垂直导航器(AdvBandedGridView专有属性)UseBackColor使用显示对象的背景色UseBorderColor使用显示对象的边框色UseFont使用显示对象的字体UseFont使用显示对象的字体UseForeColor使用显示对象的前景色UseImage使用显示对象的背景图片UseIndicatorForSelection当处理多选模式时,能否使用行指示面板来进行行的选择UseNewCustomFilterDialog高级用户用定制的过滤器对话框UsePrintStyles打印正在使用的界面UseTabKey使用UseTextOptions使用显示对象的文本选项(见TextOptions属性)Valignment文本的垂直对齐方式VertScrollTipFieldName垂直滚动条上的提示VertScrollVisibility显示垂直滚动条ViewCaption视图的标题行为WordWrap是否换行。
devgridcontrol(⼆)绑定值控件拖动排序功能,序号因为要做⼀个排序功能,弄了很久⾃带的功能都没法弄出来,最后⾃⼰写了⼀个⽅法来实现绑定数据的时候⽤泛型,拖动的时候获到到选中的⾏和要上⽬⾏上的⾏号,再使⽤下⾯的⽅法注册事件protected override void OnLoad(EventArgs e){base.OnLoad(e);//添加事件this.gridControl1.DragOver += new System.Windows.Forms.DragEventHandler(this.gridControl1_DragOver);this.gridControl1.DragDrop += new System.Windows.Forms.DragEventHandler(this.gridControl1_DragDrop);this.gridControl1.MouseDown += new MouseEventHandler(gridControl1_MouseDown);this.gridControl1.MouseMove += new MouseEventHandler(gridControl1_MouseMove);gridControl1.AllowDrop = true;BindGrid(null);}绑定值///<summary>///绑定数据///</summary>///<param name="modelList"></param>private void BindGrid(List<OrderModel> modelList){if (modelList == null){modelList = new List<OrderModel>();string sqlStr = "select functionid, functiontitle,loadorder from evbase_functionlist where parentid=" + ParentID + " order by loadorder asc";DataTable dt = mNSCEVDBManager.GetDataTable(sqlStr, null);foreach (DataRow dr in dt.Rows){OrderModel model = new OrderModel() { ID = dr["FUNCTIONID"].ToString(), Title = dr["FUNCTIONTITLE"].ToString(), LoadOrder = dr["LOADORDER"].ToString() }; modelList.Add(model);}}this.gridControl1.DataSource = modelList;this.gridControl1.RefreshDataSource();}拖动的事件#region//<gridControl1>private void gridControl1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e){hitInfo = gridView1.CalcHitInfo(new Point(e.X, e.Y));if (hitInfo.RowHandle < 0) hitInfo = null;}private void gridControl1_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e){if (hitInfo == null) return;if (e.Button != MouseButtons.Left) return;Rectangle dragRect = new Rectangle(new Point(hitInfo.HitPoint.X - SystemInformation.DragSize.Width / 2,hitInfo.HitPoint.Y - SystemInformation.DragSize.Height / 2), SystemInformation.DragSize);if (!dragRect.Contains(new Point(e.X, e.Y))){if (hitInfo.InRow){gridControl1.DoDragDrop(new object[] { hitInfo.RowHandle, gridControl1 }, DragDropEffects.All);}}}//</gridControl1>private int GetDragObject(object sender, IDataObject data){object[] obj = data.GetData(typeof(object[])) as object[];if (obj == null || !sender.Equals(gridControl1)) return -2;if (obj[0] is Int32)return (int)obj[0];else return -1;}//<gridControl1>private void gridControl1_DragOver(object sender, System.Windows.Forms.DragEventArgs e){GridHitInfo hi = gridView1.CalcHitInfo(gridControl1.PointToClient(new Point(e.X, e.Y)));int handle = GetDragObject(sender, e.Data);if (hi.InRow && handle >= 0 && handle != hi.RowHandle){if ((e.KeyState & 8) != 0)e.Effect = DragDropEffects.Copy;elsee.Effect = DragDropEffects.Move;}else e.Effect = DragDropEffects.None;}private void gridControl1_DragDrop(object sender, System.Windows.Forms.DragEventArgs e){var tempList = gridView1.DataSource as List<OrderModel>;int currentID = GetDragObject(sender, e.Data);GridHitInfo hi = gridView1.CalcHitInfo(gridControl1.PointToClient(new Point(e.X, e.Y)));int newHandle = hi.RowHandle;// int result = currentID - newHandle;OrderModel model = tempList[currentID];tempList.RemoveAt(currentID);// tempList.Add(model);tempList.Insert(newHandle, model);BindGrid(tempList);}//</gridControl1>private void gridView1_ShowingEditor(object sender, ponentModel.CancelEventArgs e){if (!MouseButtons.Equals(MouseButtons.None))e.Cancel = true;}#endregion显⽰序号void gridView1_CustomDrawRowIndicator(object sender, DevExpress.XtraGrid.Views.Grid.RowIndicatorCustomDrawEventArgs e) {if (.IsRowIndicator && e.RowHandle >= 0){.DisplayText = (e.RowHandle + 1).ToString();}}。
Devpress.Xt属性说明OptionsOptionsBehaviorAllowAddRowsAllowDeleteRowsAllowIncrementalSearchAllowPartialRedrawOnScrollingAutoExpandAllGroupsAutoPopulateColumnsAutoSelectAllInEditorAutoUpdateTotalSummaryCacheValuesOnRowUpdatingCopyToClipboardWithColumnHeadersEditableEditorShowModeFocusLeaveOnTabImmediateUpdateRowPositionKeepFocusedRowOnUpdateKeepGroupExpandedOnSortingReadOnlySmartVertScrollBarSummariesIgnoreNullValuesOptionsCustomizationAllowColumnMovingAllowColumnResizingAllowFilterAllowGroupAllowQuickHideColumnsAllowRowSizingAllowSortOptionsDetailAllowExpandEmptyDetailsAllowOnlyOneMasterRowExpandedAllowZoomDetailsAutoZoomDetailEnableDetailToolTipEnableMasterViewModeShowDetailTabsSmartDetailExpandSmartDetailExpandButtonModeSmartDetailHeightOptionsFilterAllowColumnMRUFilterListAllowFilterEditorAllowMRUFilterListColumnFilterPopupMaxRecordsCountColumnFilterPopupRowCountDefaultFilterEditorView MRUColumnFilterListCount MRUFilterListCount MRUFilterListPopupCount ShowAllTableValuesInFilterPopup UseNewCustomFilterDialogOptionsFindAllowFindPanelAlwaysVisible ClearFindOnCloseFindDelayFindFilterColumnsFindModeHighlightFindResults ShowCloseButtonOptionsHintShowCellHints ShowColumnHeaderHints ShowFooterHintsOptionsLayoutColumnsAddNewColumns RemoveOldColumns StoreAllOptions StoreAppearanceStoreLayoutLayoutVersionsStoreAllOptions StoreAppearance StoreDataSettings StoreVisualOptionsOptionsMenu EnableColumnMenu EnableFooterMenu EnableGroupPanelMenu ShowAutoFilterRowItem ShowDateTimeGroupIntervalItems ShowGroupSortSummaryItems ShowGroupSummaryEditorItemsOptionsNavigation AutoFocusNewRow AutoMoveRowFocus EnterMoveNextColumn UseOfficePageNavigation UseTabKeyOptionsPrintAutoWidth EnableAppearanceEvenRow EnableAppearanceOddRow ExpandAllDetails ExpandAllGroupsPrintDetailsPrintFilterInfoPrintFooterPrintGroupFooterPrintHeaderPrintHorzLinesPrintPreview PrintSelectedRowsPages PrintVertLines SplitCellPreviewAcrossPages UsePrintStyles OptionsSelection EnableAppearanceFocusedCell EnableAppearanceFocusedRow EnableAppearanceHideSelection InvertSelectionMuiltiSelectMuiltiSelectMode UseIndicatorForSelection OptionsViewAllowCellMerge AllowHtmlDrawHeaders AnimationType AutoCalcPreviewLineCount ColumnAutoWidth EnableAppearanceEvenRow EnableAppearanceOddRow GroupDrawMode HeaderFilterButtonShowMode NewItemRowPosition RowAutoHeight ShowAutoFilterRow ShowChildrenInGroupPanel ShowColumnHeaders ShowDetailButtons ShowFilterPanelMode ShowFooter ShowGroupedColumns ShowGroupExpandCollapseButtons ShowGroupPanelShowHorzLinesShowIndicatorShowPreviewShowPreviewLines ShowVertLines ShowViewCaption WaitAnimationOptions行为ActiveFilterEnabled BestFitMaxRowCount DefaultRelationIndexHorzScrollStepHorzScrollVisibillyScrollStyleSynchronizeClonesVertScrollVisibility外观AppearanceBandPanel、BandPanelBackground、ColumnFilterButton、ColumnFilterButtonActive、DetailTip、Empty、EvenRow、FilterCloseButton、FilterPanel、FixedLine、FocusedCell、FocusedRow、FooterPanel、GroupButton、GroupFooter、GroupPanel、GroupRow、HeaderPanel、HeaderPanelBackground、HideSelectionRow、Horzline、OddRow、Preview、Row、RowSeparator、SelectedRow、 TopNewRow、VertLine BackColorBackColor2BorderColorFontNameSizeUnitBoldGdiCharSetItalicStrikeoutUnderlineForeColorGradientModeImageOptionsUseBackColorUseBorderColorUseFontUseForeColorUseImageUseTextOptionsTextOptionsHalighmentHotkeyPrefixTrimmingValignmentWordWrapAppearancePrintBandPanel、EvenRow、FilterPanel、FooterPanel、GroupFooter、GroupRow、HeaderPanel、Lines、OddRow、Preview、RowBackColorBackColor2BorderColorFontNameSizeUnitBoldGdiCharSetItalicStrikeoutUnderlineForeColorGradientModeImageOptionsUseBackColorUseBorderColorUseFontUseForeColorUseImageUseTextOptionsTextOptionsHalighmentHotkeyPrefixTrimmingValignmentWordWrapBorderStyleChildGridLevelName ColumnPanelRowHeightDetailHeight DetailTabHeaderLocation FixedLineWidthFocusRectStyleFooterPanelHeight GroupFooterShowModeGroupFormatGroupPanelTextGroupRowHeightImagesIndicatorWidthLevelIndentNewItemRowTextPaintStyleNamePreviewFieldNamePreviewIndentPreviewLineCountRowHeightRowSepartatorHeightShowButtonMode VertScrollTipFieldName ViewCaptioness.XtraGrid.GridControl.GridView 属性说明选项视图的行为选项允许添加新数据行允许删除数据行允许用户通过输入想得到的列值来定位行允许视图在垂直滚动中局部刷新自动展开视图中的所有组当视图中没有某些数据源中的字段时,在视图中自动创建这些列在一个单元格编辑中,是否允许通过Enter或F2来选择该单元格的所有内容当列值发生改变时,自动更新汇总摘要数据缓冲将被存入数据源的数据(当一行数据要存入到数据源时,Grid可以将它的值存入到一个内部的缓冲器中。
Dev 控件之:datacontrol 分组,合计Summary:(Footer summary) (row footer summary)
(Row summary) 设置
1.样式图:
图一:分组
图2:小计合计
2.分组:如图一所示
DevExpress.XtraGrid.Columns.GridColumn column = gridView1.Columns["流水号"];//拿到要分组的列
if (column == null) return;
column.GroupIndex = 0; //未分组情况下列的GroupIndex为-1,所有都是一个组
3.(Footer summary)总体合计:也就是图2表的右下角利润合计
代码如下:
DevExpress.XtraGrid.Columns.GridColumn col_Profit = gridView1.Columns["参考利润"];
gridView1.Columns["参考利润"].SummaryItem.SummaryType = DevExpress.Data.SummaryItemType.Sum;
gridView1.Columns["参考利润"].SummaryItem.DisplayFormat = "利润合计:
{0:c2}";
4.(row footer summary)小计的出现:
或许是本人愚钝,小计的出现还是费了点波折:
注:下面是dev帮助文档提供的资料,但这是直接从界面绑定数据的作法
Add summary items by clicking Add, and customize them.
A single item is represented by a GridGroupSummaryItem class object, which is a GridSummaryItem class descendant. It provides the following main properties.
- GridSummaryItem.SummaryType- Specifies the type of summary to calculate against groups.
- GridSummaryItem.FieldName - Specifies the field against which the summary must be calculated.
- GridGroupSummaryItem.ShowInGroupColumnFooter - Specifies where to display group summary values - in group rows or in a specific column's footer.
- GridSummaryItem.DisplayFormat - Allows you to customize the display format of group summary values.
Here we use the GridSummaryItem.DisplayFormat property for demonstration purposes. To learn more about summary value formats, see Format Summary Values.
如果您的数据源是从程序中绑定的,或许下面的内容对您有用:
GridGroupSummaryItem item1 = new GridGroupSummaryItem();
item1.FieldName = "参考利润;
item1.SummaryType = DevExpress.Data.SummaryItemType.Sum;
item1.DisplayFormat = "利润小计: {0:c2}";//格式
item1.ShowInGroupColumnFooter = col_Profit;//这句就是给groupcolumnfooter加上
小计 col_Profit在上文代码(总计合计)中有
gridView1.GroupSummary.Add(item1);
5.(row summary)还有就是row summary哪一行中能很明显的给人一个总计啊.平均值啊等等的实现
如图:
具体代码如下:
:
GridGroupSummaryItem item2 = new GridGroupSummaryItem();
item2.FieldName = "参考利润;
item2.SummaryType = DevExpress.Data.SummaryItemType.Sum;
item2.DisplayFormat = "利润小计: {0:c2}";
gridView1.GroupSummary.Add(item2);
:
GridGroupSummaryItem item = new GridGroupSummaryItem();
item.FieldName = "ProductName";
item.SummaryType = DevExpress.Data.SummaryItemType.Count;
gridView1.GroupSummary.Add(item);。