Beispiel #1
0
 public void GivenTheXtrasubreportEngineIsInitialized()
 {
     _controller = new DataSourceTrackingController(_parentReport, (s, o) =>
     {
         _counter++;
         _datasources.Add(o);
     });
 }
Beispiel #2
0
        public void GivenTheXtrasubreportEngineIsInitializedWithDataSourceTracking()
        {
            _controller = new DataSourceTrackingController(_parentReport, (s, ds) =>
            {
                _counter++;

                Person person = null;

                ds.TryAs <Person>(p => person = p);
                ds.TryAs <List <object> >(
                    list => person = (Person)list.SingleOrDefault());

                if (person != null)
                {
                    _datasources.Add(person);
                }
                else
                {
                    throw new NotImplementedException();
                }
            });
        }
        public void Handler_wireup_should_be_predicatable()
        {
            var counter = 0;

            var subReport = new XtraReport();
            var container = new XRSubreport { ReportSource = subReport };

            var detailBand = new DetailBand();
            detailBand.Controls.Add(container);

            var report = new XtraReport();
            report.Bands.Add(detailBand);

            report.DataSource = new[]
                                    {
                                        new object(),
                                        new object(),
                                        new object(),
                                        new object()
                                    };


            var controller = new DataSourceTrackingController(new EventAggregator(), report, (s, ds) => counter++);
            controller.Print(r => r.ExportToMemory());
            counter.Should().Be(4);
        }