示例#1
0
        void IGraphicsRenderer.Render(GraphicsRenderContext context, ILayoutArea area)
        {
            _layoutArea = area;
            const string ErrorMsg = "IGraphicsRenderer was configured improperly.";

            CalendarContentRange content = area.ContentRange as CalendarContentRange;

            if (content == null)
            {
                Trace.TraceError(ErrorMsg);
                return;
            }

            CalendarDataRegion calendar = content.Owner as CalendarDataRegion;

            if (calendar == null)
            {
                Trace.TraceError(ErrorMsg);
                return;
            }

            if (context.DoContent)
            {
                Render(content, context.Canvas, new RectangleF(area.Left, area.Top, area.Width, area.Height));
            }
        }
        public void CalendarRenderWithNoDataBound()
        {
            PageDocument report = TestHelper.GetReport("Calendar-NoData.rdlx");

            TestingRenderingExtension rendererExt = new TestingRenderingExtension();

            report.Render(rendererExt, null);

            CalendarDataRegion calendar = rendererExt.GetReportItem("Calendar1") as CalendarDataRegion;

            Assert.IsNotNull(calendar);

            CalendarData         calendarData = new CalendarData(calendar);
            CalendarContentRange content      = new CalendarContentRange(calendar, calendarData.GetFirstMonth(), calendarData.GetLastMonth());

            // recalibrate graphics to twips
            RectangleF rect = new RectangleF(0, 0, 4000f, 4000f);

            CalendarDesigner.ScaleToTwipsGraphicsAndBound(GetGraphics(), ref rect);

            // create gdi canvas wrapper to use in renderer
            IDrawingCanvas canvas = GraphicsCanvasFactory.Create(GetGraphics());

            // render calendar to canvas
            CalendarRenderer.Instance.Render(content, canvas, rect);
        }
示例#3
0
 void ILayoutManager.Initialize(IReportItem forReportItem, ITargetDevice targetDevice)
 {
     _calendar = forReportItem as CalendarDataRegion;
     if (_calendar == null)
     {
         throw new ArgumentException("The argument has wrong type.", "forReportItem");
     }
 }