Rename TabPage into TabPanel
This commit is contained in:
@ -3,12 +3,12 @@
|
|||||||
|
|
||||||
<CascadingValue Value="this">
|
<CascadingValue Value="this">
|
||||||
<div>
|
<div>
|
||||||
@foreach (TabPage tabPage in Pages)
|
@foreach (TabPanel tabPanel in Pages)
|
||||||
{
|
{
|
||||||
<button type="button"
|
<button type="button"
|
||||||
class="btn @GetButtonClass(tabPage)"
|
class="btn @GetButtonClass(tabPanel)"
|
||||||
@onclick=@( () => ActivatePage(tabPage) )>
|
@onclick=@( () => ActivatePage(tabPanel) )>
|
||||||
@tabPage.Text
|
@tabPanel.Text
|
||||||
</button>
|
</button>
|
||||||
}
|
}
|
||||||
</div>
|
</div>
|
||||||
@ -16,27 +16,27 @@
|
|||||||
</CascadingValue>
|
</CascadingValue>
|
||||||
|
|
||||||
@code {
|
@code {
|
||||||
// Next line is needed so we are able to add <TabPage> components inside
|
// Next line is needed so we are able to add <TabPanel> components inside
|
||||||
[Parameter]
|
[Parameter]
|
||||||
public RenderFragment ChildContent { get; set; }
|
public RenderFragment ChildContent { get; set; }
|
||||||
|
|
||||||
public TabPage ActivePage { get; set; }
|
public TabPanel ActivePage { get; set; }
|
||||||
List<TabPage> Pages = new List<TabPage>();
|
List<TabPanel> Pages = new List<TabPanel>();
|
||||||
|
|
||||||
internal void AddPage(TabPage tabPage)
|
internal void AddPage(TabPanel tabPanel)
|
||||||
{
|
{
|
||||||
Pages.Add(tabPage);
|
Pages.Add(tabPanel);
|
||||||
if (Pages.Count == 1)
|
if (Pages.Count == 1)
|
||||||
ActivePage = tabPage;
|
ActivePage = tabPanel;
|
||||||
StateHasChanged();
|
StateHasChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
string GetButtonClass(TabPage page)
|
string GetButtonClass(TabPanel page)
|
||||||
{
|
{
|
||||||
return page == ActivePage ? "btn-primary" : "btn-secondary";
|
return page == ActivePage ? "btn-primary" : "btn-secondary";
|
||||||
}
|
}
|
||||||
|
|
||||||
void ActivatePage(TabPage page)
|
void ActivatePage(TabPanel page)
|
||||||
{
|
{
|
||||||
ActivePage = page;
|
ActivePage = page;
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
@namespace Oqtane.Themes.Controls
|
@namespace Oqtane.Themes.Controls
|
||||||
@inherits ThemeControlBase
|
@inherits ThemeControlBase
|
||||||
|
|
||||||
@if (Parent.ActivePage == (TabPage)(object)this)
|
@if (Parent.ActivePage == (TabPanel)(object)this)
|
||||||
{
|
{
|
||||||
@ChildContent
|
@ChildContent
|
||||||
}
|
}
|
||||||
@ -19,9 +19,9 @@
|
|||||||
protected override void OnInitialized()
|
protected override void OnInitialized()
|
||||||
{
|
{
|
||||||
if (Parent == null)
|
if (Parent == null)
|
||||||
throw new ArgumentNullException(nameof(Parent), "TabPage must exist within a TabControl");
|
throw new ArgumentNullException(nameof(Parent), "TabPanel must exist within a TabControl");
|
||||||
|
|
||||||
base.OnInitialized();
|
base.OnInitialized();
|
||||||
Parent.AddPage((TabPage)(object)this);
|
Parent.AddPage((TabPanel)(object)this);
|
||||||
}
|
}
|
||||||
}
|
}
|
Reference in New Issue
Block a user