@using Oqtane.Models @using Oqtane.Shared @DynamicComponent @functions { [CascadingParameter] protected PageState PageState { get; set; } [Parameter] private Module Module { get; set; } Module ModuleState; string container; RenderFragment DynamicComponent { get; set; } protected override void OnInit() { DynamicComponent = builder => { Type containerType = Type.GetType(container); if (containerType != null) { builder.OpenComponent(0, containerType); builder.CloseComponent(); } else { // container does not exist with type specified } }; } protected override Task OnParametersSetAsync() { ModuleState = Module; // passed in from Pane component container = ModuleState.ContainerType; if (PageState.ModuleId != -1 && PageState.Control != "") { container = Constants.DefaultAdminContainer; } return Task.CompletedTask; } }