Pergunta

Eu tenho um controle de menu dentro de um updatepanel. Quando eu passar o mouse sobre um item selecionado, e depois voltar fora dele, a classe css fica definido para staticSubMenuItem vez de staticSubMenuItemSelected. Existe uma correção para isso?

            <asp:UpdatePanel runat="server">
                <ContentTemplate>
                     <asp:Menu ID="SubMenu" runat="server" SkinID="subMenu" OnMenuItemClick="SubMenu_Click"
                CssClass="floatRight" StaticMenuItemStyle-CssClass="staticSubMenuItem" StaticSelectedStyle-CssClass="staticSubMenuItemSelected"
                StaticHoverStyle-CssClass="staticSubMenuItemSelected">
                <Items>
                    <asp:MenuItem Text="Item 1" Value="0" Selected="true" />
                    <asp:MenuItem Text="Item 2" Value="1" />
                </Items>
            </asp:Menu>
                </ContentTemplate>
            </asp:UpdatePanel>
Foi útil?

Solução

O problema é aqui:

StaticSelectedStyle-CssClass = "staticSubMenuItemSelected"
StaticHoverStyle-CssClass = "staticSubMenuItemSelected"

Se você tem um conjunto CssClass diferente para Selecionado e Hover, o problema está resolvido. Criar um "Hover" classe css e mudar o acima para:

StaticSelectedStyle-CssClass = "staticSubMenuItemSelected"
StaticHoverStyle-CssClass = "staticSubMenuItemHover"

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top