Asp.Menu submenus only able to be selected once
<p>I'm working with a asp.menu that has a submenu in it. You can select it normaly once or twice. But, if i select another note in the menu (that's not a submenu),and if i try to select the submenu, it won't appear. The mouse is on top of the parent node, but its child nodes won't appear. Any ideas?</p>

<p>I've tested with IE 8, FireFox and Chrome, but no one seems to be working. I'm populating it with a sitemap file, and i had the Chrome problem with the asp.menu that was fixed with the ServerVariables...here's the code:</p>

<pre><code>&lt;asp:Menu ID="mnuPrincipal" runat="server" DataSourceID="SiteMapDataSource1" StaticDisplayLevels="2"
                    Width="208px" OnMenuItemClick="mnuPrincipal_MenuItemClick" OnMenuItemDataBound="mnuPrincipal_temDataBound"
                    DynamicHorizontalOffset="2" StaticSubMenuIndent="40px"&gt;
                    &lt;StaticMenuStyle CssClass="menu" /&gt;
                    &lt;StaticSelectedStyle CssClass="selecionado" /&gt;
                    &lt;StaticMenuItemStyle CssClass="sub-menu" /&gt;
                    &lt;DynamicMenuStyle CssClass="fix" /&gt;
                    &lt;DynamicSelectedStyle CssClass="selecionado" /&gt;
                    &lt;DynamicMenuItemStyle CssClass="sub-menu" /&gt;
                &lt;/asp:Menu&gt;

&lt;asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server" StartFromCurrentNode="false" /&gt;


&lt;?xml version="1.0" encoding="utf-8" ?&gt;
&lt;siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" &gt;
  &lt;siteMapNode url="formPaginaPrincipal.aspx" title="Página Inicial"  description="Pagina inicial do site"&gt;
    &lt;siteMapNode url="listaModalidades.aspx" title="Modalidades"  description="Modalidades de licitações" /&gt;
    &lt;siteMapNode url="listaTiposLicitacao.aspx" title="Tipos de Licitação"  description="Tipos de licitações" /&gt;
    &lt;siteMapNode url="listaOrgaos.aspx" title="Órgãos"  description="Órgãos do governo de Pernambuco" /&gt;
    &lt;siteMapNode url="listaComissoes.aspx" title="Comissões"  description="Comissões de licitações" /&gt;
    &lt;siteMapNode url="listaLicitacoes.aspx" title="Licitações"  description="Licitações" /&gt;
    &lt;siteMapNode url="ArquivarLicitacoes.aspx" title="Arquivar Licitações"  description="Arquivamento de Licitações" /&gt;
    &lt;siteMapNode url="#" title="Relatórios" description="Relatórios do sistema"&gt;
      &lt;siteMapNode url="listaRelatorios.aspx" title="Relatórios das Licitações" &gt;
      &lt;/siteMapNode&gt;
      &lt;siteMapNode url="listaRelUsuarioLog.aspx" title="Relatórios das Ações Executadas por Usuário" &gt;
      &lt;/siteMapNode&gt;
    &lt;/siteMapNode&gt;
    &lt;siteMapNode url="listaEmpresas.aspx" title="Fornecedores"  description="Fornecedores" /&gt;
    &lt;siteMapNode url="listaUsuarios.aspx" title="Usuários"  description="Usuários de Órgãos do governo de Pernambuco" /&gt;
    &lt;siteMapNode url="formPaginaPrincipal.aspx?acao=sair" title="Sair"  description="Encerrar Sessão" /&gt;
  &lt;/siteMapNode&gt;
&lt;/siteMap&gt;

protected void mnuPrincipal_temDataBound(object sender, MenuEventArgs e)
        {
            SiteMapNode mapNodel = (SiteMapNode)e.Item.DataItem;

            if (mapNodel.Title.Equals("Relatórios"))
            {
                e.Item.Selectable = false;
            }
            if (!(((CUsuario)Session["usuario"]).getUsuario().ToUpper().Equals("admin".ToUpper())))
            {
                if (!((((CUsuario)Session["usuario"]).Orgao != null) &amp;&amp; (((CUsuario)Session["usuario"]).getAdministradorOrgao())))
                {

                    System.Web.UI.WebControls.Menu menu = (System.Web.UI.WebControls.Menu)sender;
                    SiteMapNode mapNode = (SiteMapNode)e.Item.DataItem;

                    System.Web.UI.WebControls.MenuItem itemToRemove = menu.FindItem(mapNode.Title);

                    if (mapNode.Title == "Comissões" || mapNode.Title == "Arquivar Licitações" || mapNode.Title == "Tipos de Licitação")
                    {
                        System.Web.UI.WebControls.MenuItem parent = e.Item.Parent;
                        if (parent != null)
                        {
                            parent.ChildItems.Remove(e.Item);
                        }
                    }
                }
                if (((CUsuario)Session["usuario"]).getAdministradorOrgao())
                {
                    System.Web.UI.WebControls.Menu menu = (System.Web.UI.WebControls.Menu)sender;
                    SiteMapNode mapNode = (SiteMapNode)e.Item.DataItem;

                    System.Web.UI.WebControls.MenuItem itemToRemove = menu.FindItem(mapNode.Title);

                    if (mapNode.Title == "Tipos de Licitação")
                    {
                        System.Web.UI.WebControls.MenuItem parent = e.Item.Parent;
                        if (parent != null)
                        {
                            parent.ChildItems.Remove(e.Item);
                        }
                    }
                }
            }
</code></pre>
