void ApplyCustomFilter(CloseUpEventArgs e) { if (customCheck.Checked) { ColumnFilterInfo cfi = Column.FilterInfo; View.ShowCustomFilterDialog(Column); if (!ReferenceEquals(cfi.FilterCriteria, Column.FilterInfo.FilterCriteria)) { View.DateFilterInfo = Column.FilterInfo; foreach (Control ctrl in DateFilterControl.Controls) { CheckEdit ce = (ctrl as CheckEdit); if (ce != null) { if (ce.Text == customName) { ce.Tag = new FilterDateElement(Column.FieldName, Column.FilterInfo.FilterString, View.DateFilterInfo.FilterCriteria); DateFilterControl.ApplyFilter(); } } } } else { customCheck.Checked = false; } } else { View.DateFilterInfo = null; } }
void UpdateFilterItems() { var gridListEditor = ListView.Editor as IColumnViewEditor; if ((gridListEditor != null) && (gridListEditor.ColumnView != null)) { bool isActiveFilterEnabled = gridListEditor.ColumnView.ActiveFilterEnabled; foreach (GridColumn column in gridListEditor.ColumnView.Columns) { if (column.FilterInfo.Value != null) { var newFilterInfo = new ColumnFilterInfo(ColumnFilterType.AutoFilter, View.ObjectSpace.GetObject(column.FilterInfo.Value), column.FilterInfo.FilterCriteria, string.Empty); column.View.ActiveFilter.Remove(column); column.FilterInfo = newFilterInfo; } var newMRUFilters = new ColumnFilterInfoCollection(); for (int i = 0; i < column.MRUFilters.Count; i++) { newMRUFilters.Add(new ColumnFilterInfo(column, View.ObjectSpace.GetObject(column.MRUFilters[i].Value), column.MRUFilters[i].DisplayText)); } column.MRUFilters.Clear(); foreach (ColumnFilterInfo filterInfo in newMRUFilters) { column.MRUFilters.Add(filterInfo); } } gridListEditor.ColumnView.ActiveFilterEnabled = isActiveFilterEnabled; } }
public void SetFilter(string columnName, List <object> filterList) { GridColumn orderIdColumn = ((GridView)this.gridControl1.DefaultView).Columns[columnName]; ColumnFilterInfo filterInfo = new ColumnFilterInfo(new InOperator(columnName, filterList)); orderIdColumn.FilterInfo = filterInfo; }
protected override ColumnFilterInfo DoCustomFilter(GridColumn column, ColumnFilterInfo filterInfo) { RaiseFilterEditorPopup(); ColumnFilterInfo result = base.DoCustomFilter(column, filterInfo); RaiseFilterEditorClosed(); return(result); }
protected override ColumnFilterInfo DoCustomFilter(GridColumn column, ColumnFilterInfo filterInfo) { RaiseFilterEditorPopup(); SuppressInvalidCastException(column); ColumnFilterInfo result = base.DoCustomFilter(column, filterInfo); CancelSuppressInvalidCastException(column); RaiseFilterEditorClosed(); return(result); }
private static void CreateFilterCriteria(IDynamicProperty property, BandedGridColumn column) { if (property.FilterCriteria == null || string.IsNullOrEmpty(property.FilterCriteria.FilterString)) { return; } var filterInfo = new ColumnFilterInfo(property.FilterCriteria.FilterString); column.FilterInfo = filterInfo; }
private void lstBoxApplications_SelectedValueChanged(object sender, EventArgs e) { BinaryOperator bOper = new BinaryOperator("Application", lstBoxApplications.SelectedValue); // CriteriaOperator cri = BinaryOperator ColumnFilterInfo d = new ColumnFilterInfo(bOper); ((ColumnView)gridConfig.Views[0]).Columns[0].FilterInfo = d; }
public static void Filter(this GridControl grid, string colName, DateTime FromDate, DateTime ToDate) { GridView view = grid.MainView as GridView; DevExpress.Data.Filtering.CriteriaOperator filter = new DevExpress.Data.Filtering.GroupOperator(DevExpress.Data.Filtering.GroupOperatorType.And, new DevExpress.Data.Filtering.BinaryOperator("Date", FromDate, DevExpress.Data.Filtering.BinaryOperatorType.GreaterOrEqual), new DevExpress.Data.Filtering.BinaryOperator("Date", ToDate, DevExpress.Data.Filtering.BinaryOperatorType.Less)); string filterDisplayText = String.Format(colName + " is between {0:d} and {1:d}", FromDate, ToDate); ColumnFilterInfo dateFilter = new ColumnFilterInfo(filter.ToString(), filterDisplayText); view.Columns[colName].FilterInfo = dateFilter; }
private void ApplyFilter() { if (gridView1.Columns["Date"] == null) { return; } CriteriaOperator binaryFilter = new GroupOperator(GroupOperatorType.And, new BinaryOperator("Date", FromDate, BinaryOperatorType.GreaterOrEqual), new BinaryOperator("Date", ToDate, BinaryOperatorType.Less)); CriteriaOperator simplifiedFilter = (new OperandProperty("Date") >= new OperandValue(FromDate)) & (new OperandProperty("Date") < new OperandValue(ToDate)); string filterDisplayText = String.Format("Date is between {0:d} and {1:d}", FromDate, ToDate); ColumnFilterInfo dateFilter = new ColumnFilterInfo(binaryFilter.ToString(), filterDisplayText); gridView1.Columns["Date"].FilterInfo = dateFilter; }
/// <summary> /// 그리트 뷰에 필터 Between 조건을 적용한다. /// </summary> /// <param name="gv"></param> /// <param name="value"></param> /// <param name="columnName"></param> /// <param name="GOType"></param> /// <param name="OType1"></param> /// <param name="OType2"></param> public static void GridView_FilterApply(GridView gv, object value_from, object value_to, string columnName, GroupOperatorType GOType = GroupOperatorType.And, BinaryOperatorType OType1 = BinaryOperatorType.GreaterOrEqual, BinaryOperatorType OType2 = BinaryOperatorType.LessOrEqual) { if (value_from == null || value_to == null) { //gvBooks.Columns[columnName].FilterInfo. return; } CriteriaOperator binaryFilter = new GroupOperator(GroupOperatorType.And, new BinaryOperator(columnName, value_from, OType1), new BinaryOperator(columnName, value_to, OType2)); //string filterDisplayText = String.Format("{0} = {1} ", columnName, value); //ColumnFilterInfo dateFilter = new ColumnFilterInfo(binaryFilter.ToString(), filterDisplayText); ColumnFilterInfo dateFilter = new ColumnFilterInfo(binaryFilter); gv.Columns[columnName].FilterInfo = dateFilter; }
private void onShowFilterPopupListBox(FilterPopupListBoxEventArgs e) { if (e.Column != _columnTags.XtraColumn) { return; } e.ComboBox.BeginUpdate(); try { e.ComboBox.Items.Clear(); foreach (var tag in _presenter.AvailableTags) { var filterInfo = new ColumnFilterInfo(getFilterString(e.Column.FieldName, tag), getFilterDisplayText(tag)); e.ComboBox.Items.Add(new FilterItem(tag, filterInfo)); } } finally { e.ComboBox.EndUpdate(); } }
protected override void ApplyCheckedColumnFilter(GridColumn column, object stringValues, List <object> checkedValues) { if (column.ColumnEdit is RepositoryItemCheckedComboBoxEdit) { var groupOperator = new GroupOperator( GroupOperatorType.Or, from checkedValue in checkedValues where checkedValue != null select new FunctionOperator( FunctionOperatorType.Contains, new OperandProperty(column.FieldName), new OperandValue(checkedValue))); ColumnFilterInfo filterInfo; switch (groupOperator.Operands.Count) { case 0: filterInfo = new ColumnFilterInfo(); break; case 1: filterInfo = new ColumnFilterInfo(groupOperator.Operands[0]); break; default: filterInfo = new ColumnFilterInfo(groupOperator); break; } column.FilterInfo = filterInfo; } else { base.ApplyCheckedColumnFilter(column, stringValues, checkedValues); } }
/// <summary> /// 그리트 뷰에 필터 조건을 적용한다. /// </summary> /// <param name="gv"></param> /// <param name="value"></param> /// <param name="columnName"></param> /// <param name="GOType"></param> /// <param name="OType"></param> public static void GridView_FilterApply(GridView gv, object value, string columnName, GroupOperatorType GOType = GroupOperatorType.And, BinaryOperatorType OType = BinaryOperatorType.Equal) { if (value == null) { //gvBooks.Columns[columnName].FilterInfo. return; } if (OType == BinaryOperatorType.Like) { value = "%" + value + "%"; } CriteriaOperator binaryFilter = new GroupOperator(GroupOperatorType.And, new BinaryOperator(columnName, value, OType)); //string filterDisplayText = String.Format("{0} = {1} ", columnName, value); //ColumnFilterInfo dateFilter = new ColumnFilterInfo(binaryFilter.ToString(), filterDisplayText); ColumnFilterInfo dateFilter = new ColumnFilterInfo(binaryFilter); gv.Columns[columnName].FilterInfo = dateFilter; }
/// <summary> /// 设置栏位的过虑条件 /// </summary> public static void SetDetailColumnFilter(GridColumn col, string filter) { ColumnFilterInfo finfo = new ColumnFilterInfo(filter, ""); col.FilterInfo = finfo; }
private void DataUpdate_Filter() { if (gda == null) return; if (gParentGrid == null) throw new XtraGridException("error in Child_Filter there is no parent defined (\"{0}\")", gsName); XtraGridTools.SaveCurrentChangeToDataTable(gGridControl); object parentId = CurrentParentId; GridColumn col = gGridView.Columns[gsChildIdFieldName]; if (col != null && col.FilterInfo.Value != parentId) { ColumnFilterInfo f = new ColumnFilterInfo(parentId); col.FilterInfo = f; if (parentId != null) { if (!gGridOption.NoInsert && !gGridOption.NoInsertButton) XtraGridTools.NavigatorInsertEnable(gGridControl); } else XtraGridTools.NavigatorInsertDisable(gGridControl); } }
private void frmTransform_Load(object sender, EventArgs e) { if (!String.IsNullOrWhiteSpace(this.SourceXML)) txtSourceXml.Text = this.SourceXML; if (!String.IsNullOrWhiteSpace(txtSourceXml.Text)) { btnLoad_Click(null, null); } if (this.Transform == null) { this.Transform = new TransformModel(); } else { var filterStr = ""; foreach (var filterModel in this.Transform.Filters) { var col = gView.Columns[filterModel.FieldName]; if (col == null) continue; var filter = new ColumnFilterInfo(ColumnFilterType.Value, filterModel.Value.ToString(), ""); //filter.Type = ColumnFilterType.Value; //filter.Value = String.Format("[{0}] = '{1}'", filterModel.FieldName, filterModel.Value); gView.ActiveFilter.Add(col, filter); //filterStr += String.Format(" AND [{0}] = '{1}'", filterModel.FieldName, filterModel.Value); } //if (filterStr.Length >= 5) //{ // gView.ActiveFilterString = filterStr.Substring(5); //} foreach (var operationModel in this.Transform.Operations) { this.OperationList.Add(operationModel); listBox1.Items.Add(operationModel); } txtTransformName.Text = this.Transform.Name; } }
private void Link_CreateMarginalHeaderArea(object sender, CreateAreaEventArgs e) { // PageInfoBrick brick = e.Graph.DrawPageInfo(PageInfo.DateTime, "", Color.DarkBlue, // new RectangleF(0, 0, 100, 20), BorderSide.None); // brick.LineAlignment = BrickAlignment.Center; // brick.Alignment = BrickAlignment.Center; // brick.AutoWidth = true; DevExpress.XtraPrinting.TextBrick brick1; brick1 = e.Graph.DrawString("Quote di adesione contrattuale " + cboAnno.Text, Color.Navy, new RectangleF(0, 0, 620, 20), DevExpress.XtraPrinting.BorderSide.None); brick1.Font = new Font("Tahoma", 14); brick1.StringFormat = new DevExpress.XtraPrinting.BrickStringFormat(StringAlignment.Center); brick1.VertAlignment = DevExpress.Utils.VertAlignment.Top; DevExpress.XtraPrinting.TextBrick brick2; ColumnFilterInfo f = gridView1.Columns["Causale"].FilterInfo; // MessageBox.Show(f.FilterString); string ind = "Industria"; string art = "Artigianato"; string coo = "Cooperazione"; string reg = "Regionali"; string label = "Industria - Artigianato - Cooperative - Regionali"; if (!string.IsNullOrEmpty(f.FilterString)) { if (f.FilterString.Contains(ind.ToUpper())) { label = ind; } else if (f.FilterString.Contains(art.ToUpper())) { label = art; } else if (f.FilterString.Contains(coo.ToUpper())) { label = coo; } else { label = reg; } } IList data = GetVisibileData(); brick2 = e.Graph.DrawString("Riepilogo generale da \n" + label + " \n alla data: " + AbstractMovimentoContabile.GetLastMovivimentoDate(GetVisibileData()).ToShortDateString() + " " + orderBy, Color.Navy, new RectangleF(0, 20, 650, 50), DevExpress.XtraPrinting.BorderSide.None); brick2.Font = new Font("Tahoma", 10, FontStyle.Bold); brick2.StringFormat = new DevExpress.XtraPrinting.BrickStringFormat(StringAlignment.Center); brick2.VertAlignment = DevExpress.Utils.VertAlignment.Bottom; DevExpress.XtraPrinting.TextBrick brick3; brick3 = e.Graph.DrawString("FENEAL U.I.L. \nSEGRETERIA NAZIONALE \nServizio Amministrazione \nServizio Organizzazione", Color.Red, new RectangleF(0, 0, 150, 50), DevExpress.XtraPrinting.BorderSide.None); brick3.Font = new Font("Tahoma", 7, FontStyle.Bold); brick3.StringFormat = new DevExpress.XtraPrinting.BrickStringFormat(StringAlignment.Near); brick3.VertAlignment = DevExpress.Utils.VertAlignment.Bottom; }
private void Detail_Filter() { object idMaster; ColumnFilterInfo f; GridColumn col; if (gdaDetail != null) { //cGrid.SaveCurrentChange(gGridDetail); XtraGridTools.SaveCurrentChangeToDataTable(gGridDetail); idMaster = Master_CurrentId; col = gViewDetail.Columns[gsDetailId]; if (col != null && col.FilterInfo.Value != idMaster) { f = new ColumnFilterInfo(idMaster); col.FilterInfo = f; if (idMaster != null) { if (!gOptionDetail.NoInsert && !gOptionDetail.NoInsertButton) //cGrid.GridInsertEnable(gGridDetail); XtraGridTools.NavigatorInsertEnable(gGridDetail); } else //cGrid.GridInsertDisable(gGridDetail); XtraGridTools.NavigatorInsertDisable(gGridDetail); } } }
public static Expression <Func <T, bool> > BuildFilterExpression <T>(ColumnFilterInfo filterInfo) { Expression <Func <T, bool> > filterExpression = null; if (filterInfo.EqualValue != null) { var any = false; Expression <Func <T, bool> > equalExpression = item => false; foreach (var equalValue in filterInfo.EqualValue) { equalExpression = equalExpression.OrElse(ExpressionHelper.Equal <T>(filterInfo.PropertyNameOrExpression, equalValue)); any = true; } if (any) { filterExpression = equalExpression; } } if (filterInfo.NotEqualValue != null) { foreach (var notEqualValue in filterInfo.NotEqualValue) { filterExpression = filterExpression.AndAlso(ExpressionHelper.NotEqual <T>(filterInfo.PropertyNameOrExpression, notEqualValue)); } } if (filterInfo.LessThanValue != null) { filterExpression = filterExpression.AndAlso(ExpressionHelper.LessThan <T>(filterInfo.PropertyNameOrExpression, filterInfo.LessThanValue)); } if (filterInfo.LessThanOrEqualValue != null) { filterExpression = filterExpression.AndAlso(ExpressionHelper.LessThanOrEqual <T>(filterInfo.PropertyNameOrExpression, filterInfo.LessThanOrEqualValue)); } if (filterInfo.GreaterThanValue != null) { filterExpression = filterExpression.AndAlso(ExpressionHelper.GreaterThan <T>(filterInfo.PropertyNameOrExpression, filterInfo.GreaterThanValue)); } if (filterInfo.GreaterThanOrEqualValue != null) { filterExpression = filterExpression.AndAlso(ExpressionHelper.GreaterThanOrEqual <T>(filterInfo.PropertyNameOrExpression, filterInfo.GreaterThanOrEqualValue)); } if (filterInfo.ContainValue != null) { var any = false; Expression <Func <T, bool> > containExpression = item => false; foreach (var containValue in filterInfo.ContainValue) { containExpression = containExpression.OrElse(ExpressionHelper.Contains <T>(filterInfo.PropertyNameOrExpression, containValue)); any = true; } if (any) { filterExpression = filterExpression.AndAlso(containExpression); } } return(filterExpression); }
private void CreateFilter(CriteriaOperator filterCriteria) { try { if (!object.ReferenceEquals(filterCriteria, null)) { ColumnFilterInfo info = new ColumnFilterInfo(filterCriteria); this.column.FilterInfo = info; } else { this.column.FilterInfo = new ColumnFilterInfo(); } } catch (Exception exception) { XtraMessageBox.Show(base.LookAndFeel.ActiveLookAndFeel, base.FindForm(), exception.Message, GridLocalizer.Active.GetLocalizedString(GridStringId.WindowErrorCaption)); this.CreateFilter(this._OldFilter); } }
protected override ColumnFilterInfo DoCustomFilter(GridColumn column, ColumnFilterInfo filterInfo) { RaiseFilterEditorPopup(); ColumnFilterInfo result = base.DoCustomFilter(column, filterInfo); RaiseFilterEditorClosed(); return result; }
protected override ColumnFilterInfo DoCustomFilter(GridColumn column, ColumnFilterInfo filterInfo) { RaiseFilterEditorPopup(); SuppressInvalidCastException(column); ColumnFilterInfo result = base.DoCustomFilter(column, filterInfo); CancelSuppressInvalidCastException(column); RaiseFilterEditorClosed(); return result; }