@namespace Oqtane.Modules.Controls @inherits ModuleBase @foreach (TabPanel tabPanel in _tabPanels) { ActivateTabPanel(tabPanel) )> @tabPanel.Text } @ChildContent @code { private List _tabPanels = new List(); // Next line is needed so we are able to add components inside [Parameter] public RenderFragment ChildContent { get; set; } public TabPanel ActiveTabPanel { get; set; } internal void AddTabPanel(TabPanel tabPanel) { _tabPanels.Add(tabPanel); if (_tabPanels.Count == 1) ActiveTabPanel = tabPanel; StateHasChanged(); } private string GetButtonClass(TabPanel tabPanel) => tabPanel == ActiveTabPanel ? "btn-primary" : "btn-secondary"; private void ActivateTabPanel(TabPanel tabPanel) { ActiveTabPanel = tabPanel; } }