@using Oqtane.Models @using Oqtane.Shared @using Oqtane.Modules @namespace Oqtane.Shared @DynamicComponent @code { [CascadingParameter] protected PageState PageState { get; set; } [Parameter] public Module Module { get; set; } RenderFragment DynamicComponent { get; set; } Module ModuleState; protected override void OnParametersSet() { ModuleState = Module; // passed in from Pane component string container = ModuleState.ContainerType; if (PageState.ModuleId != -1 && PageState.Control != "" && ModuleState.UseAdminContainer) { container = Constants.DefaultAdminContainer; } DynamicComponent = builder => { Type containerType = Type.GetType(container); if (containerType != null) { builder.OpenComponent(0, containerType); builder.CloseComponent(); } else { // container does not exist with type specified builder.OpenComponent(0, Type.GetType(Constants.ModuleMessageControl)); builder.AddAttribute(1, "Message", "Error Loading Module Container " + container); builder.CloseComponent(); } }; } }