Exemplo n.º 1
0
        private void AddTable()
        {
            if (Table == null)
            {
                return;
            }
            var table = new FoxOne.Controls.Table()
            {
                ShowCheckBox = true, ShowIndex = true, Rank = 2, Id = tableListTemplate.FormatTo(ListPageName), PageId = ListPageName, ParentId = ListPageName, TargetId = "Right"
            };

            if (Type != null)
            {
                table.DataSource = new EntityDataSource()
                {
                    EntityTypeFullName = Type.FullName
                };
            }
            else
            {
                table.DataSource = new CRUDDataSource()
                {
                    CRUDName = this.CRUDName
                };
            }
            var key = Table.Columns.FirstOrDefault(o => o.IsKey);

            table.KeyFieldName = key == null ? "Id" : key.Name;
            table.EditUrl      = "/Page/" + EditPageName;
            table.InsertUrl    = table.EditUrl;
            table.DeleteUrl    = "/Entity/Delete";
            foreach (var c in Table.Columns)
            {
                if (c.Showable)
                {
                    table.Columns.Add(new TableColumn()
                    {
                        Rank = c.Rank, FieldName = c.Name, Id = "column{0}".FormatTo(c.Name), ColumnName = c.Comment
                    });
                }
            }
            foreach (var btn in ControlDefaultSetting.GetDefaultTableButton())
            {
                table.Buttons.Add(btn);
            }
            ComponentHelper.RecSave(table);
        }