Beispiel #1
0
        private ReportBlock ExecuteUserCode(Render render, int pageIndex, Action <ReportBlock, object> action, object data)
        {
            ReportBlock block = new ReportBlock(this, render, 0, 0);

            block.AddDetail(0, 0, action, data, false, pageIndex);
            block.AssignPageIndexRecursive(pageIndex);
            return(block);
        }
Beispiel #2
0
        private Render InternalRender(Render render)
        {
            ReportBlock rbPage = new ReportBlock(this, render, 0, 0);

            rbPage.AddDetail(0, rbPage.position.height, m_actionBody, m_actionBodyData, false);

            // dibuja el body
            rbPage.Draw(EPagePosition.Body, 0, 0, 0);

            return(render);
        }
Beispiel #3
0
        /// <summary>
        /// Adds the detail.
        /// </summary>
        /// <returns>The detail.</returns>
        /// <param name="x">The x coordinate.</param>
        /// <param name="y">The y coordinate.</param>
        /// <param name="detail">Detail.</param>
        /// <param name="data">Data.</param>
        /// <param name="keepTogether">If set to <c>true</c> keep together.</param>
        /// <param name="pageIndexForHeaderOrFooter">Los headers y footers están en posición 0, pero en una página concreta, este valor representa esta página</param>
        internal ReportBlock AddDetail(float x, float y, Action <ReportBlock, object> detail, object data, bool keepTogether, int pageIndexForHeaderOrFooter)
        {
            ReportBlock rbDetail = new ReportBlock(m_report, m_render, x, y + position.y)
            {
                parent = this
            };

            rbDetail.SetKeepTogether(keepTogether);

            rbDetail.PageIndex += pageIndexForHeaderOrFooter;

            if (detail != null)
            {
                detail.Invoke(rbDetail, data);
            }

            rbDetail.CheckKeepTogether();

            AddSon(rbDetail);

            return(rbDetail);
        }