Beispiel #1
0
        internal new Rdl.Render.GenericRender Render(Rdl.Render.Container box, Rdl.Runtime.Context parentContext)
        {
            Rdl.Runtime.Context context = new Rdl.Runtime.Context(
                parentContext,
                null,
                null,
                null,
                null);

            // Initialize the data sets. // Initialized in RunTimeBase
            //_dataSets.Initialize();
            _dataSets.Reset();

            // Set the default DataSet for the report
            if (_dataSchema != null)
            {
                _reportDataSet = _dataSets[_dataSchema];
            }
            else
            {
                _reportDataSet = _dataSets.FirstDataSet;
            }

            // Set up the default data context.
            if (parentContext != null)
            {
                parentContext = parentContext.FindContextByDS(_reportDataSet);
            }
            context = new Rdl.Runtime.Context(
                parentContext, _reportDataSet, null, null, null);

            Rdl.Render.GenericRender render;
            if (box == null)
            {
                render = new Rdl.Render.GenericRender(this, context);
                box    = render.BodyContainer;
            }
            else
            {
                render = box.Render;
            }

            if (_pageHeader != null)
            {
                _pageHeader.Render(render.PageHeaderContainer, context);
            }

            if (_pageFooter != null)
            {
                _pageFooter.Render(render.PageFooterContainer, context);
            }

            // Render the report.
            _body.Render(box, context);

            context.LinkToggles();

            return(render);
        }
Beispiel #2
0
 internal Element(Container parent, Rdl.Engine.ReportElement reportElement, BoxStyle style)
 {
     _parentElement = parent;
     if (_parentElement != null)
     {
         _genericRender = _parentElement._genericRender;
     }
     _reportElement = reportElement;
     if (style != null && reportElement != null)
     {
         _styleIndex = Render.AddStyle(style);
     }
     _toggles = new Toggles(this);
 }
Beispiel #3
0
        /// <summary>
        /// Sets the report to view in the viewer control
        /// </summary>
        /// <param name="report"></param>
        public void SetReport(Rdl.Render.GenericRender report)
        {
            _report = report;

            _fonts = new Font[_report.StyleList.Count];

            // Build a list of fonts corresponding to the styles in the report
            for (int i = 0; i < _report.StyleList.Count; i++)
            {
                if (_report.StyleList[i] is Rdl.Render.TextStyle)
                {
                    TextStyle ts = _report.StyleList[i] as TextStyle;
                    _fonts[i] = ts.GetWindowsFont();
                }
            }

            // Render the report to a list of pages.
            _pageRender = new PageRender();
            _pageRender.Render(report);


            StreamWriter sw;

            if (_pageRender.Pages.Count > 0)
            {
                sw = new StreamWriter(@"pages.txt", false);

                for (int i = 0; i < _pageRender.Pages.Count; i++)
                {
                    sw.Write(_pageRender.Pages[i].ToString(0));
                    sw.WriteLine("\n");
                }
                sw.Close();
            }

            textPages.Text  = _pageRender.Pages.Count.ToString();
            _currentPageNum = 0;
            _currentPage    = _pageRender.Pages[0];

            BuildToggleList(_currentPage);

            // Set the scrollable position of the panel.
            panelReport.Invalidate();
        }
Beispiel #4
0
 public Element(Element e)
 {
     _name = e._name;
     _canGrowHorizontally = e._canGrowHorizontally;
     _canGrowVertically   = e._canGrowVertically;
     _reportElement       = e._reportElement;
     _styleIndex          = e._styleIndex;
     _imageIndex          = e._imageIndex;
     _top             = e._top;
     _left            = e._left;
     _width           = e._width;
     _height          = e._height;
     _renderedTop     = e._renderedTop;
     _renderedLeft    = e._renderedLeft;
     _renderedWidth   = e._renderedWidth;
     _renderedHeight  = e._renderedHeight;
     _keepTogether    = e._keepTogether;
     _pageBreakAfter  = e._pageBreakAfter;
     _pageBreakBefore = e._pageBreakBefore;
     _fixed           = e._fixed;
     _toggles         = new Toggles(e._toggles);
     _genericRender   = e._genericRender;
 }
Beispiel #5
0
 internal void SetGenericRender(GenericRender render)
 {
     _genericRender = render;
 }