@namespace Oqtane.Modules.Controls @inherits ModuleControlBase

@ChildContent
@code { private List _tabPanels = new List(); [Parameter] public RenderFragment ChildContent { get; set; } // contains the TabPanels [Parameter] public string ActiveTab { get; set; } // optional - defaults to first TabPanel if not specified. Can also be set using a "tab=" querystring parameter. protected override void OnInitialized() { if (PageState.QueryString.ContainsKey("tab")) { ActiveTab = PageState.QueryString["tab"]; } } internal void AddTabPanel(TabPanel tabPanel) { _tabPanels.Add(tabPanel); if (string.IsNullOrEmpty(ActiveTab)) { ActiveTab = tabPanel.Name; } StateHasChanged(); } private string DisplayHeading(string Name, string Heading) { return (string.IsNullOrEmpty(Heading)) ? Name : Heading; } }