Apply a layout to a component
@page "/episodes" @layout DoctorWhoLayout <h2>Episodes</h2> <ul> <li> <a href="https://www.bbc.co.uk/programmes/p00vfknq"> <em>The Ribos Operation</em> </a> </li> <li> <a href="https://www.bbc.co.uk/programmes/p00vfdsb"> <em>The Sun Makers</em> </a> </li> <li> <a href="https://www.bbc.co.uk/programmes/p00vhc26"> <em>Nightmare of Eden</em> </a> </li> </ul>
Apply a layout to a folder of components
_Imports.razor
:
@layout DoctorWhoLayout ...
Apply a default layout to an app
App.razor
:
<Router AppAssembly="@typeof(Program).Assembly"> <Found Context="routeData"> <RouteView RouteData="@routeData" DefaultLayout="@typeof(MainLayout)" /> </Found> <NotFound> <p>Sorry, there's nothing at this address.</p> </NotFound> </Router>
Apply a layout to arbitrary content (LayoutView component)
App.razor
:
<Router AppAssembly="@typeof(Program).Assembly"> <Found Context="routeData"> <RouteView RouteData="@routeData" DefaultLayout="@typeof(MainLayout)" /> </Found> <NotFound> <LayoutView Layout="@typeof(ErrorLayout)"> <h1>Page not found</h1> <p>Sorry, there's nothing at this address.</p> </LayoutView> </NotFound> </Router>
References
https://docs.microsoft.com/en-us/aspnet/core/blazor/components/layouts?view=aspnetcore-6.0#apply-a-layout
https://blazor-university.com/layouts/using-layouts/