public static void LoadWidgets(IEnumerable <WidgetModel> widgetModels, Control placeholder, TemplateControl page) { if (placeholder == null) { return; } if (page == null) { return; } if (widgetModels == null) { return; } var groups = widgetModels.OrderBy(x => x.RowNumber).ThenBy(x => x.ColumnNumber).GroupBy(x => new { x.RowNumber }); foreach (var group in groups) { foreach (WidgetModel item in group) { using (MixERPWidgetBase widget = page.LoadControl(item.WidgetSource) as MixERPWidgetBase) { if (widget != null) { placeholder.Controls.Add(widget); widget.OnControlLoad(widget, new EventArgs()); } } } } }
public static void LoadWidgets(IEnumerable <WidgetModel> widgetModels, PlaceHolder placeholder, Page page) { if (placeholder == null) { return; } if (page == null) { return; } if (widgetModels == null) { return; } var groups = widgetModels.OrderBy(x => x.RowNumber).ThenBy(x => x.ColumnNumber).GroupBy(x => new { x.RowNumber }); foreach (var group in groups) { foreach (var item in group) { using (HtmlGenericControl div = new HtmlGenericControl()) { div.TagName = "div"; div.Attributes.Add("class", "sortable-item col-md-" + 12 / group.Count()); if (item.ColSpan > 1) { div.Attributes.Add("data-ss-colspan", item.ColSpan.ToString(CultureInfo.CurrentUICulture)); } using (MixERPWidgetBase widget = page.LoadControl(item.WidgetSource) as MixERPWidgetBase) { if (widget != null) { div.Controls.Add(widget); widget.OnControlLoad(widget, new EventArgs()); } } placeholder.Controls.Add(div); } } } }
public void LoadWidgets(IEnumerable <Widget> widgetModels, Control placeholder, TemplateControl page) { if (placeholder == null) { return; } if (page == null) { return; } if (widgetModels == null) { return; } string[] ExemptWidgets = new string[] { "OfficeInformationWidget", "LinksWidget", "WorkflowWidget" }; var groups = widgetModels.OrderBy(x => x.RowNumber).ThenBy(x => x.ColumnNumber).GroupBy(x => new { x.RowNumber }); foreach (var group in groups) { foreach (Widget item in group) { if (!ExemptWidgets.Contains(item.WidgetName)) { using (MixERPWidgetBase widget = page.LoadControl(item.WidgetSource) as MixERPWidgetBase) { if (widget != null) { placeholder.Controls.Add(widget); widget.OnControlLoad(widget, new EventArgs()); } } } } } }