Modernize sidebar with DxTreeView and new responsive styles
Refactor NavMenu to use DevExpress DxTreeView for navigation, replacing the old NavLink-based menu. Update sidebar and navigation row styling to use CSS variables, remove Bootstrap-specific and SVG icon CSS, and add a responsive hamburger menu for small screens. Improve dark mode support and overall maintainability.
This commit is contained in:
@@ -1,36 +1,26 @@
|
||||
<div class="top-row ps-3 navbar navbar-dark">
|
||||
<div class="container-fluid">
|
||||
<a class="navbar-brand" href="">DbFirst.BlazorWebApp</a>
|
||||
</div>
|
||||
<div class="nav-brand-row">
|
||||
<a class="nav-brand-link" href="">DbFirst</a>
|
||||
<button class="nav-toggle-btn" @onclick="ToggleMenu" title="Navigation menu">☰</button>
|
||||
</div>
|
||||
|
||||
<input type="checkbox" title="Navigation menu" class="navbar-toggler" />
|
||||
|
||||
<div class="nav-scrollable" onclick="document.querySelector('.navbar-toggler').click()">
|
||||
<nav class="flex-column">
|
||||
<div class="nav-item px-3">
|
||||
<NavLink class="nav-link" href="" Match="NavLinkMatch.All">
|
||||
<span class="bi bi-house-door-fill-nav-menu" aria-hidden="true"></span> Home
|
||||
</NavLink>
|
||||
</div>
|
||||
|
||||
<div class="nav-item px-3">
|
||||
<NavLink class="nav-link" href="catalogs">
|
||||
<span class="bi bi-collection-nav-menu" aria-hidden="true"></span> Catalogs
|
||||
</NavLink>
|
||||
</div>
|
||||
|
||||
<div class="nav-item px-3">
|
||||
<NavLink class="nav-link" href="dashboards">
|
||||
<span class="bi bi-speedometer-nav-menu" aria-hidden="true"></span> Dashboards
|
||||
</NavLink>
|
||||
</div>
|
||||
|
||||
<div class="nav-item px-3">
|
||||
<NavLink class="nav-link" href="massdata">
|
||||
<span class="bi bi-table-nav-menu" aria-hidden="true"></span> MassData
|
||||
</NavLink>
|
||||
</div>
|
||||
</nav>
|
||||
<div class="nav-scrollable @(menuOpen ? "nav-open" : "")">
|
||||
<DxTreeView CssClass="sidebar-tree">
|
||||
<Nodes>
|
||||
<DxTreeViewNode Text="Home" NavigateUrl="/" IconCssClass="dxi dxi-home" />
|
||||
<DxTreeViewNode Text="Data Management" Expanded="true">
|
||||
<Nodes>
|
||||
<DxTreeViewNode Text="Catalogs" NavigateUrl="/catalogs" IconCssClass="dxi dxi-folder" />
|
||||
<DxTreeViewNode Text="Dashboards" NavigateUrl="/dashboards" IconCssClass="dxi dxi-chart-bar" />
|
||||
<DxTreeViewNode Text="Mass Data" NavigateUrl="/massdata" IconCssClass="dxi dxi-table" />
|
||||
</Nodes>
|
||||
</DxTreeViewNode>
|
||||
</Nodes>
|
||||
</DxTreeView>
|
||||
</div>
|
||||
|
||||
@code {
|
||||
private bool menuOpen = false;
|
||||
private void ToggleMenu() => menuOpen = !menuOpen;
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user