예제 #1
0
        /// <inheritdoc/>
        public override void SaveState()
        {
            saveVisible = Visible;
            BandBase parent = Parent as BandBase;

            saveStateSkipped = !Visible || (parent != null && !parent.Visible);
            if (saveStateSkipped)
            {
                return;
            }

            if (!IsManualBuild)
            {
                base.SaveState();
            }
            else
            {
                // create the result table that will be rendered in the preview
                SetResultTable(new TableResult());
                ResultTable.Assign(this);
                ResultTable.SetReport(Report);
                helper = new TableHelper(this, ResultTable);

                Visible = false;

                if (parent != null)
                {
                    parent.Height      = Top;
                    parent.CanGrow     = false;
                    parent.CanShrink   = false;
                    parent.AfterPrint += new EventHandler(ResultTable.GeneratePages);
                }

                OnManualBuild(EventArgs.Empty);
            }
        }