Esempio n. 1
0
        /// <summary>
        /// Summary type selected
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>

        private void AggregationTypeMenuItem_Click(object sender, EventArgs e)
        {
            PivotGridFieldMx f = PivotGridField;

            DXMenuItem mi       = sender as DXMenuItem;
            string     typeName = mi.Tag.ToString();         // tag is enum member name

            AggregationTypeDetail atd = AggregationTypeDetail.GetByTypeName(typeName, true);

            if (atd.IsGroupingType && atd.GroupingType == GroupingTypeEnum.NumericInterval)
            {
                DialogResult dr = NumericIntervalDialog.ShowDialog(f.Aggregation, UIMisc.MousePosition);
                //if (dr == DialogResult.Cancel) return;
            }

            f.Aggregation.SetFromTypeName(typeName);
            f.SyncDxAreaToMxRole();             // sync Dx area
            PivotGrid.RefreshData();

            if (UpdateViewWhenGridControlChanges)
            {
                View.UpdateViewFieldsFromGridFields();
            }

            return;
        }
Esempio n. 2
0
        /// <summary>
        /// The area that a field is located in has changed.
        ///  If changed by the DX UI then the added members in PivotGridFieldMx must be updated
        ///  If changed by Mobius code (InSetup = true) then nothing needed here.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>

        private void Grid_FieldAreaChanged(object sender, PivotFieldEventArgs e)
        {
            if (InSetup)
            {
                return;
            }

            try
            {
                InSetup = true;
                PivotGridFieldContext fc = GetPivotGridFieldContext(e.Field);
                if (fc == null)
                {
                    return;
                }

                PivotGridFieldMx f = fc.F;

                f.SyncMxRoleToDxArea();

                ResultsField rfld = fc.ResultsField;
                if (rfld == null || rfld.MetaColumn == null)
                {
                    return;
                }

                f.Aggregation.SetDefaultTypeIfUndefined(rfld.MetaColumn);                 // may need to set default type as well

                PivotGridControlMx.SetFieldCaption(f);

                PivotGrid.RefreshData();                 // recalc summaries

                if (UpdateViewWhenGridControlChanges)
                {
                    View.UpdateViewFieldsFromGridFields();
                }

                return;
            }

            finally
            {
                InSetup = false;
            }
        }