コード例 #1
0
 protected override void OnActivated()
 {
     base.OnActivated();
     analysisEditor = View.GetItems <AnalysisEditorWin>()[0];
     analysisEditor.ControlCreated += analysisEditor_ControlCreated;
     ((IAnalysisInfo)View.CurrentObject).InfoChanged += PivotGridInplaceEditorsController_InfoChanged;
 }
コード例 #2
0
        private void BindPivotGridCustomizationItemToEditor(AnalysisEditorWin analysisEditor)
        {
            PivotGridCustomizationDetailViewItem customizationItem = FindPivotGridCustomizationItem();

            if (customizationItem != null)
            {
                customizationItem.SetAnalysisEditor(analysisEditor);
            }
        }
コード例 #3
0
        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();
        }
コード例 #4
0
 protected override void OnDeactivated()
 {
     base.OnDeactivated();
     ((IAnalysisInfo)View.CurrentObject).InfoChanged -= PivotGridInplaceEditorsController_InfoChanged;
     if (analysisEditor != null)
     {
         analysisEditor.ControlCreated -= analysisEditor_ControlCreated;
         if (analysisEditor.Control != null)
         {
             analysisEditor.Control.PivotGrid.EditValueChanged -= pivotGridControl_EditValueChanged;
         }
         analysisEditor = null;
     }
 }
コード例 #5
0
 public void SetAnalysisEditor(AnalysisEditorWin analysisEditor)
 {
     UnsubscribeEditorEvents();
     this.analysisEditor = analysisEditor;
     SubscribeEditorEvents();
 }
 public void SetAnalysisEditor(AnalysisEditorWin analysisEditor)
 {
     UnsubscribeEditorEvents();
     this.analysisEditor = analysisEditor;
     SubscribeEditorEvents();
 }
コード例 #7
0
        private void ApplyAnalysisFilter_Execute(object sender, SimpleActionExecuteEventArgs e)
        {
            //((XafExtAnalysis)View.CurrentObject).IsFilterVisible = true;   // !((XafExtAnalysis)View.CurrentObject).IsFilterVisible;

            XafExtAnalysis currentObject = detailView.CurrentObject as XafExtAnalysis;

            if (currentObject == null)
            {
                return;
            }

            // Добавляем преднастроенный фильтр, если он определён
            if (wp != null)
            {
                if (string.IsNullOrEmpty(currentObject.AdminCriteria))
                {
                    currentObject.Criteria = wp.CriterionString;
                }
                else
                {
                    currentObject.Criteria = "(" + currentObject.AdminCriteria + ")" + "(" + wp.CriterionString + ")";
                }
            }
            else
            {
                if (!string.IsNullOrEmpty(currentObject.AdminCriteria))
                {
                    currentObject.Criteria = currentObject.AdminCriteria;
                }
            }

            // Подключаемся к ListViewProcessCurrentObjectController
            if (analysisDataBindController != null)
            {
                AnalysisEditorWin         analysisEditor  = null;
                IList <AnalysisEditorWin> analysisEditors = detailView.GetItems <AnalysisEditorWin>();
                if (analysisEditors.Count == 1)
                {
                    analysisEditor = analysisEditors[0];

                    if (analysisEditor.IsDataSourceReady)
                    {
                        ChartControl     chartControl     = ((AnalysisControlWin)analysisEditor.Control).ChartControl;
                        PivotGridControl pivotGridControl = ((AnalysisControlWin)analysisEditor.Control).PivotGrid;

                        //    Type currentType = currentObject.DataType.UnderlyingSystemType;
                        //    XPCollection xpDataSource = new XPCollection(currentObject.Session, currentType);
                        //    xpDataSource.CriteriaString = currentObject.Criteria;
                        //    if (!xpDataSource.IsLoaded) xpDataSource.Load();

                        //    pivotGridControl.DataSource = xpDataSource;
                        ////pivotGridControl.Fields.A
                        //    //(pivotGridControl.DataSource as XPCollection).CriteriaString = currentObject.Criteria.ToString();

                        pivotGridControl.RefreshData();
                        chartControl.RefreshData();
                        //pivotGridControl.Update();
                        //// Do what you want with the chart and pivot grid controls
                        //foreach (PivotGridField field in pivotGridControl.Fields) {
                        //    field.Visible = true;
                        //}
                    }
                    else
                    {
                        ExecStandartAction(analysisDataBindController.BindDataAction);
                    }
                }
            }
        }