void PhotosElement(IContainer container, ReportSectionPhotos model)
        {
            if (model.Photos.Count == 0)
            {
                container.Text("No photos", Typography.Normal);
                return;
            }

            var rowCount = (int)Math.Ceiling(model.Photos.Count / 3f);

            container.Padding(-2).Stack(stack =>
            {
                foreach (var rowId in Enumerable.Range(0, rowCount))
                {
                    stack.Element().Row(row =>
                    {
                        foreach (var id in Enumerable.Range(0, 3))
                        {
                            var data = model.Photos.ElementAtOrDefault(rowId + id);
                            row.RelativeColumn().Padding(2).Component(new ImageTemplate(data));
                        }
                    });
                }
            });
        }
Exemple #2
0
        void PhotosElement(IContainer container, ReportSectionPhotos model)
        {
            if (model.PhotoCount == 0)
            {
                container.Text("No photos").Style(Typography.Normal);
                return;
            }

            container.DebugArea("Photos").Grid(grid =>
            {
                grid.Spacing(5);
                grid.Columns(3);

                Enumerable
                .Range(0, model.PhotoCount)
                .ToList()
                .ForEach(x => grid.Item().AspectRatio(4 / 3f).Component <ImagePlaceholder>());
            });
        }