如何获得Xtragrid过滤和排序的数据源?

编程入门 行业动态 更新时间:2024-10-12 16:24:05
本文介绍了如何获得Xtragrid过滤和排序的数据源?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我有一个绑定到bindingSource的xtraGrid控件(v12.1),这最后一个数据是从LINQ到实体查询(EF4.3.1)获取的,最终用户可以对gridView进行过滤和排序,我有一个Stimulsoft报告当用户单击PrintListButton时,该视图显示gridView的内容,如何将xtragrid过滤和排序的数据源添加到报表中? 谢谢。

I have an xtraGrid control (v12.1) binded to a bindingSource, this last gets its data from a LINQ to entities query (EF4.3.1), the end user can filter and sort the gridView, I have a Stimulsoft report that shows the content of the gridView when the user clicks on a PrintListButton, how to get the xtragrid filtered and sorted datasource, in order to attach it to the report? Thanks.

推荐答案

var data = GetDataView(xtraGridControl1); report.RegData("List", data.ToTable()); public DataView GetDataView(GridControl gc) { DataView dv = null; if (gc.FocusedView != null && gc.FocusedView.DataSource != null) { var view = (ColumnView)gc.FocusedView; var currentList = listBindingSource.List.CopyToDataTable().DefaultView; //(DataView) var filterExpression = GetFilterExpression(view); var sortExpression = GetSortExpression(view); var currentFilter = currentList.RowFilter; //create a new data view dv = new DataView(currentList.Table) {Sort = sortExpression}; if (filterExpression != String.Empty) { if (currentFilter != String.Empty) { currentFilter += " AND "; } currentFilter += filterExpression; } dv.RowFilter = currentFilter; } return dv; } public string GetFilterExpression(ColumnView view) { var expression = String.Empty; if (view.ActiveFilter != null && view.ActiveFilterEnabled && view.ActiveFilter.Expression != String.Empty) { expression = view.ActiveFilter.Expression; } return expression; } public string GetSortExpression(ColumnView view) { var expression = String.Empty; foreach (GridColumnSortInfo info in view.SortInfo) { expression += string.Format("[{0}]", info.Column.FieldName); if (info.SortOrder == DevExpress.Data.ColumnSortOrder.Descending) expression += " DESC"; else expression += " ASC"; expression += ", "; } return expression.TrimEnd(',', ' '); }

更多推荐

如何获得Xtragrid过滤和排序的数据源?

本文发布于:2023-07-09 21:25:12,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1088247.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:数据源   如何获得   Xtragrid

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!