Mudando a cor da fonte de um menu vertical com wpf

LUCAS LORENÇO ALVES - 01652462007 0 Pontos de reputação
2024-06-13T11:41:59.0733333+00:00

Olá pessoal do fórum tudo bem?

Estou com programa legado, feito em C# com front-End feito na tecnologia WPF. O menu vertical, quando eu passo o mouse quero que apenas mude a cor da fonte da letra, não o fundo. O código se encontra no arquivo Cod_Menu.txt a baixo da foto.

Menu

Cod_Menu.txt

Windows Forms
Windows Forms
Um conjunto de bibliotecas gerenciadas do .NET Framework para desenvolver interfaces gráficas do usuário.
13 perguntas
0 comentários Sem comentários
{count} votos

1 resposta

Classificar por: Mais útil
  1. Jonathan Pereira Castillo 810 Pontos de reputação Fornecedor da Microsoft
    2024-06-25T17:02:26.2333333+00:00

    Oi LUCAS LORENÇO ALVES - 01652462007!

    Bem-vindo ao Microsoft Q&A!

    O código não é suportado pela Microsoft, mesmo que eu tente ajudá-lo um pouco, como extramile, e informações gerais.

    Para mudar a cor da fonte de um item de menu no WPF ao passar o mouse, sem alterar a cor de fundo, você pode usar um Style com um Trigger que muda a propriedade Foreground quando o evento MouseEnter ocorre. Aqui está um exemplo de como você pode definir isso no seu XAML:

    <Window.Resources>
    <Window.Resources>
        <!-- Estilo para os itens do menu -->
        <Style x:Key="MenuItemStyle" TargetType="{x:Type hc:SideMenuItem}">
            <Setter Property="Foreground" Value="#B1B1B1"/>
            <Style.Triggers>
                <!-- Trigger para mudar a cor da fonte ao passar o mouse -->
                <Trigger Property="IsMouseOver" Value="True">
                    <Setter Property="Foreground" Value="SuaCorDesejadaAqui"/>
                </Trigger>
            </Style.Triggers>
        </Style>
    </Window.Resources>
    
    <Grid Grid.Row="5">
        <hc:TransitioningContentControl>
            <hc:SideMenu Background="Transparent"
                         ScrollViewer.VerticalScrollBarVisibility="Hidden">
                <!-- Aplicando o estilo criado aos itens do menu -->
                <hc:SideMenuItem Header="Início"
                                 x:Name="HomeItem"
                                 FontSize="24"
                                 Style="{StaticResource MenuItemStyle}"
                                 Margin="10,5,20,5"
                                 ToolTip="Início" Background="{x:Null}">
                    <!-- Ícone e outros elementos -->
                </hc:SideMenuItem>
                <!-- Outros itens do menu -->
            </hc:SideMenu>
        </hc:TransitioningContentControl>
    </Grid>
    <Window.Resources>
    

    Substitua SuaCorDesejadaAqui pela cor que você quer que a fonte mude quando o mouse estiver sobre o item do menu. Esse estilo deve ser aplicado a todos os hc:SideMenuItem que você deseja que tenham esse comportamento.

    Espero que essas dicas ajudem a resolver o problema! Se precisar de mais assistência, estou à disposição.

    Saudações

    Jonathan.

    -----------

    Se a resposta for a solução correta, clique em "Aceitar resposta" e vote educadamente nela. Se você tiver perguntas adicionais sobre essa resposta, clique em "Comentar". Nota: Siga as etapas em nossa documentação para habilitar notificações por e-mail se você gostaria de receber notificações por e-mail relacionadas a este tópico.

    0 comentários Sem comentários