Exemplo n.º 1
0
        public object Render(AdfPanel panel)
        {
            short index = 0;
            var table = new Table { CssClass = PanelStyle};

            int cellsperrow = panel.GetMaxItemsPerRow() * 2;

            foreach (var panelrow in panel.Rows)
            {
                var row = new TableRow { CssClass = RowStyle };
                var itemcell = new TableCell();

                for (int i = 0; i < panelrow.Items.Count(); i++)
                {
                    var item = panelrow.Items[i];

                    var labels = RenderLabel(item);
                    var items = RenderItem(item);

                    item.SetTabIndex(index += 3);

                    if (!item.AttachToPrevious)
                    {
                        if (!item.Label.IsNullOrEmpty())
                        {
                            var labelcell = new TableCell();

                            labelcell.Controls.AddRange(labels);
                            row.Controls.Add(labelcell);
                        }

                        itemcell = new TableCell();
                    }

                    itemcell.Controls.AddRange(items);
                    if (i == panelrow.Items.Count() - 1) itemcell.ColumnSpan = cellsperrow - i;

                    row.Controls.Add(itemcell);
                }

                table.Rows.Add(row);
            }

            return table;
        }
Exemplo n.º 2
0
        public object Render(AdfPanel panel)
        {
            if (panel.Rows.Count == 0) return null;

            var table = new Table { CssClass = PanelStyle};

            int cellsperrow = panel.GetMaxItemsPerRow() * 2;

            foreach (var panelrow in panel.Rows)
            {
                var row = new TableRow { CssClass = RowStyle };
                var itemcell = new TableCell { CssClass = ItemCellStyle };

                for (int i = 0; i < panelrow.Items.Count(); i++)
                {
                    var item = panelrow.Items[i];
                    var labels = RenderLabel(item);
                    var items = RenderItem(item);

                    if (!item.AttachToPrevious)
                    {
                        if (!item.Label.IsNullOrEmpty())
                        {
                            var labelcell = new TableCell { ID = "panelLabelItem_" + item.GetPropertyName(), CssClass = LabelCellStyle };

                            labelcell.Controls.AddRange(labels);
                            row.Controls.Add(labelcell);
                        }

                        itemcell = new TableCell { ID = "panelControlItem_" + item.GetPropertyName(), CssClass = ItemCellStyle };
                    }

                    itemcell.Controls.AddRange(items);
                    if (i == panelrow.Items.Count() - 1) itemcell.ColumnSpan = cellsperrow - i;

                    row.Controls.Add(itemcell);
                }

                table.Rows.Add(row);
            }

            return table;
        }