Blazor - recipiente mudança lay-out quando um (personalizado) componente específico é encontrado

votos
0

Esta é talvez uma pergunta estranha, e isso pode ser um exagero para fazê-lo desta maneira, mas como um recém-chegado BlazorEstou curioso para saber se é possível.

Posso mudar o estilo do meu elemento div dependendo componentes específicos dentro desse elemento div?

Então, para explicar um pouco mais, eu criei 2 navbarsque eu possa implementar, um horizontal navbare um vertical navbar. Estes personalizado navbar componentspode ser adicionado no MainLayout.razorarquivo assim:

<HorizontalNavbar></HorizontalNavbar>

<div class=main>
    <h1>my testing title</h1>
</div>

A principal lay-out é importado em todas as minhas páginas Blazor (como padrão), no _Host.cshtmlarquivo da <app>div / classe é adicionada. Eu quero mudar o estilo do aplicativo para flex-direction: column;se o arquivo layout principal contém um HorizontalNavbarcomponente, e flex-direction: row;se o main-layout contém o VerticalNavbar. É este o de qualquer maneira possível?

Claro que eu poderia apenas definir uma classe de mensagens publicitárias, com o bom flex-direções, dentro de cada um dos componentes navbar, mas, em seguida, gostaria de obter algo como:

<HorizontalNavbar>
   All my inner content
</HorizontalNavbar>

Que não parece muito grande. Alguma idéia para conseguir isso? Talvez algo como isto: https://blazorfiddle.com/s/385py5jb mas depois com o evento / gatilho de encontrar uma classe de controle específica / css?

Publicado 13/01/2020 em 23:59
fonte usuário
Em outras línguas...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more