void analysisEditor_DataSourceCreating(object sender, DataSourceCreatingEventArgs e) { CriteriaOperator userCriteria = null; if (e.AnalysisInfo != null) { if (!string.IsNullOrEmpty(e.AnalysisInfo.Criteria)) { userCriteria = CriteriaWrapper.ParseCriteriaWithReadOnlyParameters(e.AnalysisInfo.Criteria,e.AnalysisInfo.DataType); } var analysisEditorBase = (AnalysisEditorBase)sender; var criteriaOperatorArgs = new CriteriaOperatorArgs(analysisEditorBase,e.AnalysisInfo); var analysisEditorArgs = new AnalysisEditorArgs(analysisEditorBase, e.AnalysisInfo); InvokeDatasourceCreating(analysisEditorArgs); InvokeApplyingCollectionCriteria(criteriaOperatorArgs); e.DataSource = analysisEditorArgs.Handled ? analysisEditorArgs.DataSource : View.ObjectSpace.CreateCollection(e.AnalysisInfo.DataType, userCriteria & criteriaOperatorArgs.Criteria &_criteriaOperator); e.Handled = true; InvokeDataSourceCreated(analysisEditorArgs); } }
protected virtual void InvokeApplyingCollectionCriteria(CriteriaOperatorArgs e) { EventHandler<CriteriaOperatorArgs> handler = ApplyingCollectionCriteria; if (handler != null) handler(this, e); }