private void ClearAnalusisFilter_Execute(object sender, SimpleActionExecuteEventArgs e) { if (detailView == null) { return; } XafExtAnalysis currentObject = detailView.CurrentObject as XafExtAnalysis; if (currentObject == null) { return; } // Устанавливаем преднастроенный фильтр, если он определён currentObject.Criteria = currentObject.AdminCriteria; // Скрываем саму кнопку AnalysisCriterionListAction.Active[DO_NOT_ACTIVE] = true; // Разблокируем две кнопки AnalysisCriterionListAction.Enabled.Clear(); AnalysisCriterionListAction.Enabled[DO_NOT_ENABLED] = true; AnalysisEditorWin analysisEditor = null; IList <AnalysisEditorWin> analysisEditors = detailView.GetItems <AnalysisEditorWin>(); if (analysisEditors.Count == 1) { analysisEditor = analysisEditors[0]; } // Скрытие панели с фильтром FilterPanelHide(); currentFilterId = ""; if (analysisDataBindController != null) { if (analysisEditor.IsDataSourceReady) { ExecStandartAction(analysisDataBindController.UnbindDataAction); } } if (wp == null) { return; } wp.ClearFilter(); }
private void ListViewClearFilter_Execute(object sender, SimpleActionExecuteEventArgs e) { // Разблокируем стандартный полнотекстовый поиск standardFilterController.FullTextFilterAction.Enabled[FTS_DO_NOT_ENABLED] = true; // Скрываем саму кнопку //FilteringCriterionListActionClose1.Active[DO_NOT_ACTIVE] = false; FilteringCriterionListAction.Active[DO_NOT_ACTIVE] = true; // Разблокируем две кнопки FilteringCriterionListAction.Enabled.Clear(); FilteringCriterionListAction.Enabled[DO_NOT_ENABLED] = true; ListViewApplyFilter.Enabled.Clear(); ListViewApplyFilter.Enabled[DO_NOT_ENABLED] = false; DevExpress.ExpressApp.ListView listView = View as DevExpress.ExpressApp.ListView; listView.CollectionSource.Criteria.Clear(); if (wp != null) { wp.ClearFilter(); } // Очищаем полнотекстовый поиск standardFilterController.FullTextFilterAction.DoExecute(""); //if (wp == null) return; //wp.ClearFilter(); ////listView.CollectionSource.Criteria.Clear(); //listView.CollectionSource.Reload(); // Не нужно в связи standardFilterController.FullTextFilterAction.DoExecute(null)? // Скрытие панели с фильтром FilterPanelHide(); currentFilterId = ""; }
private void FilteringCriterionListAction_Execute(object sender, SingleChoiceActionExecuteEventArgs e) { // В зависимости от выбранного пункта вызывается та или иная форма if (detailView == null) { return; } DevExpress.ExpressApp.DC.ITypeInfo objectTypeInfo = detailView.ObjectTypeInfo; XafExtAnalysis currentObject = detailView.CurrentObject as XafExtAnalysis; if (currentObject == null) { return; } // Находим, если задан, фильтр из модели string choiceActionItemFilterString = ""; FilterController fc = Frame.GetController <FilterController>(); ChoiceActionItem choiceActionItem = ((SingleChoiceAction)(fc.Actions["SetFilter"])).SelectedItem; if (choiceActionItem != null) { choiceActionItemFilterString = choiceActionItem.Data.ToString(); } if (e.SelectedChoiceActionItem.Data != null) { IModelDetailView node = e.SelectedChoiceActionItem.Data as IModelDetailView; // Тип объекта-фильтра Type filterObjType = node.ModelClass.TypeInfo.Type; string strCriteria = this.criteriaBuilderString; IObjectSpace objectSpace = frame.Application.CreateObjectSpace(); ICustomFilter objFilter = objectSpace.CreateObject(filterObjType) as ICustomFilter; if (objFilter == null) { return; } objFilter.LV = null; objFilter.DV = detailView; objFilter.objectTypeInfo = objectTypeInfo; objFilter.CriteriaController = this; objFilter.AdditionalCriterionString = choiceActionItemFilterString; //objFilter.Criterion = strCriteria; string DetailViewId = frame.Application.FindDetailViewId(objFilter.GetType()); if (FilterIsShowihg & currentFilterId == DetailViewId) { FilterPanelHide(); return; } currentFilterId = DetailViewId; FilterIsShowihg = true; wp = objFilter as ICustomFilter; if (wp == null) { return; } wp.ClearFilter(); DetailView newView = frame.Application.CreateDetailView(objectSpace, DetailViewId, false, objFilter); newView.CreateControls(); filterPanel.Controls.Clear(); DevExpress.ExpressApp.Win.Layout.XafLayoutControl ctrlFilter = ((DevExpress.ExpressApp.Win.Layout.XafLayoutControl)newView.Control); filterPanel.Controls.Add(ctrlFilter); AnalysisCriterionListAction.SelectedIndex = 0; //FilterPanelShow(100); //FilterPanelShow(GetFilterHight(newView) + 30); // Устанавливаем преднастроенный фильтр, если он определён currentObject.Criteria = currentObject.AdminCriteria; //AnalysisEditorWin analysisEditor = null; //IList<AnalysisEditorWin> analysisEditors = detailView.GetItems<AnalysisEditorWin>(); //if (analysisEditors.Count == 1) { // analysisEditor = analysisEditors[0]; //} //if (analysisEditor != null) { // ChartControl chartControl = ((AnalysisControlWin)analysisEditor.Control).ChartControl; // PivotGridControl pivotGridControl = ((AnalysisControlWin)analysisEditor.Control).PivotGrid; // // Do what you want with the chart and pivot grid controls // pivotGridControl.RefreshData(); // chartControl.RefreshData(); // //pivotGridControl.Update(); //} ExecStandartAction(analysisDataBindController.UnbindDataAction); FilterPanelShow(GetFilterHight(newView) + 30); return; } }