none
Menu pas très dynamique RRS feed

  • Question

  • Bonjour tout le monde,

    J'ai un problème avec le contrôle Menu, qui fait notamment l'objet de l'atelier 3 du coach de création d'un site web en 12 ateliers, Ajouter les éléments de la navigation.

    Pour ce qui est du menu statique, ça baigne.

    Mais la page de liste des publications, en niveau 3, fait juste apparaître une petite flèche à droite de la page parent, et normalement, si j'ai bien compris lorsque le lecteur clique sur cette petite flèche ça doit lui faire apparaître le lien pour faire apparaître la page de la liste des publications.

    ça fait bien apparaître une petite zone blanche en dessous du lien vers la page des annonces par région, mais c'est tout, et si je clique sur cette zone blanche il ne se passe rien.

    J'ai passé la nuit à tâtonner avec diverses combinaisons de styles, jouer un peu avec les DataBindings, rien de plus.

    Alors j'ai chargé la solution de l'atelier, et ça fait pareil. Donc, semble-t-il, le problème n'est pas dans ma lecture des instructions de l'atelier.

    Est-il dans mon installation de la plateforme .Net ?

    mercredi 23 mai 2012 10:09

Réponses

  • Patrice Scribe nous disait que le problème était connu il y a longtemps avec IE8 et ASP.Net 2.

    Là où il se trompe, c'est que jusqu'à plus ample informée, le problème se pose toujours aujourd'hui avec IE8 et ASP.Net 2.

    La même page s'affiche très bien sous Firefox, et le fonctionnement du menu dynamique y correspond bien à ce qui est annoncé.

    • Marqué comme réponse Gloops samedi 26 mai 2012 08:11
    samedi 26 mai 2012 08:09

Toutes les réponses

  • Bonjour,

    Sur quel(s) navigateur(s) et avec quelle version d'ASP.NET ? Il y a eu un pb connu sur IE8 mais c'était il y a longtemps (je pense en 2.0).

    Même problème avec le menu de test ci-dessous ?

       <asp:Menu runat="server">
            <Items>
                <asp:MenuItem Text="A">
                    <asp:MenuItem Text="A.1" NavigateUrl="a1.aspx" />
                    <asp:MenuItem Text="A.2" NavigateUrl="a2.aspx"/>
                </asp:MenuItem>
                <asp:MenuItem Text="B">
                    <asp:MenuItem Text="B.1" NavigateUrl="b1.aspx"/>
                    <asp:MenuItem Text="B.2" NavigateUrl="b2.aspx"/>
                    <asp:MenuItem Text="B.3" NavigateUrl="b3.aspx"/>
                </asp:MenuItem>
            </Items>
        </asp:Menu>


    Please always mark whatever response solved your issue so that the thread is properly marked as "Answered".

    jeudi 24 mai 2012 16:32
    Modérateur
  • Bonjour,

    IE Version    8.0.6001.18702

    On trouve vraiment Menu dans plusieurs versions de .Net ?

    J'ignorais, en tout cas le coach mentionné en référence n'en propose qu'une.

    Classe Menu

    Alors puisque c'est bien avec cette version qu'il y a eu un problème, ça veut dire qu'il faut appliquer les mises à jour ?

    En tout cas, si c'est dans les mises à jour automatiques ça ne doit pas être si vieux que ça, car j'en ai fait le mois dernier.

    Pour le code proposé je ne me suis pas cassé la tête, je l'ai collé dans le bloc-notes, et j'ai enregistré ça avec une extension aspx, IE m'a réclamé une feuille XSL. J'ai l'impression qu'il va falloir que je reprenne ça à tête reposée, que je me fende au minimum d'une directive Page, et d'un test au sein d'une application ASP.Net ... Probablement ce week-end alors.

    Dans le coach il s'agissait de faire apparaître le plan de site tel que stocké dans web.sitemap. Il m'a semblé que si on laisse apparaître le nœud racine, il faut impérativement préciser au moins le nombre de niveaux en statique.

    Merci pour ces pistes de recherche ...

    jeudi 24 mai 2012 18:54
  • Il fau créer une page ASPX et y copier/coller le code. Vous n'utilisez pas VS ? Cela ressemble à http://blogs.msdn.com/b/giorgio/archive/2009/02/01/asp-net-menu-and-ie8-rendering-white-issue.aspx (j'essaierai dans un autre navigateur pour confirmer que cela n'arrive qu'avec IE).

    Vous êtes en ASP.NET 4.0 ou encore en 2.0 ? Sinon c'est peut-être le site map qui n'est pas bon...


    Please always mark whatever response solved your issue so that the thread is properly marked as "Answered".

    vendredi 25 mai 2012 08:37
    Modérateur
  • Je reconnais que ce n'était pas très fin de rendre compte de ma tentative de coller le code directement dans un fichier texte ... C'est un peu comme quand on rentre chez soi trop bourré pour viser le trou de la serrure avec la clef, il vaut mieux éviter de s'en vanter.

    Le coach Microsoft aide à monter une application ASP.Net 2.0

    Demain je penserai à tester avec Firefox, une fois tel quel et une fois avec un menu initialisé explicitement tel que proposé ci-dessus, et à donner les codes des différentes parties : web.sitemap, default.css, default.skin, MasterPage.master où il y a le ocntrôle Menu. Je crois que ça devrait faire le compte, avec ça ?

    vendredi 25 mai 2012 08:55
  • Le Menu avec les valeurs en dur dans son code source donne le même résultat, à une nuance près. Par défaut on a un niveau en statique et le suivant en dynamique, raison vraisemblable pour laquelle le coach a conseillé de ne pas afficher le nœud racine, comme ça au premier niveau on a l'essentiel du site qui apparaît.

    Le rectangle blanc sous Menu2 fait bien deux lignes de haut sous A, et trois sous B.

    La source du sitemap a déjà été publiée dans la solution du coach, mais à toutes fins utiles :

    <?xml version="1.0" encoding="utf-8" ?>
    <siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
      <siteMapNode url="~/Default.aspx" title="Accueil"  
                   description="Espace d'accueil">
        <siteMapNode url="~/ConsulterAnnoncesParRegion.aspx" title="Consulter nos annonces"
                      description="Liste de toutes nos annonces classées par région" >
          <siteMapNode url="~/ConsulterAnnoncesJournaux.aspx" title="Consulter les publications"  
                      description="Liste des publications de nos annonces" />
        </siteMapNode>
        <siteMapNode url="~/DiffuserAnnonce.aspx" title="Diffuser une annonce" 
                      description="Publier une annonce en ligne" />
        <siteMapNode url="~/AdministrerAnnonces.aspx" title="Administrer les annonces"
                      description="Administration des annonces"/>
        <siteMapNode url="~/QuiSommesNous.aspx" title="Qui sommes-nous " 
                      description="En savoir plus sur AffairesSansRisque" />
      </siteMapNode>
    </siteMap>


    Pour mémoire :

    j'ai chargé la solution de l'atelier, et ça fait pareil.

    Voilà pourquoi je cherchais du côté de l'installation ...

    Il se confirme que Firefox affiche tout proprement.


    • Modifié Gloops samedi 26 mai 2012 08:06
    samedi 26 mai 2012 07:57
  • Patrice Scribe nous disait que le problème était connu il y a longtemps avec IE8 et ASP.Net 2.

    Là où il se trompe, c'est que jusqu'à plus ample informée, le problème se pose toujours aujourd'hui avec IE8 et ASP.Net 2.

    La même page s'affiche très bien sous Firefox, et le fonctionnement du menu dynamique y correspond bien à ce qui est annoncé.

    • Marqué comme réponse Gloops samedi 26 mai 2012 08:11
    samedi 26 mai 2012 08:09
  • Si c'est bien le même souci, il y avait eu effectivement un patch publié à l'époque et que nous avions appliqué avec succès, mais je n'arrive plus à trouver le téléchargement lui-même : http://support.microsoft.com/kb/962351 (dirige sur un téléchargement qui ne correspond peut-être pas ? Essayez peut-être ?)

    Vous êtes sur que vous avez toutes les mises à jour ? Cela a peut-être incorporé dans un "service pack" depuis ? Ou encore, si vous débutez sur ASP.NET et même si les tutoriaux sont encore en 2.0, il serait peut-être préférable de passer à .NET 4.0 ?


    Please always mark whatever response solved your issue so that the thread is properly marked as "Answered".

    samedi 26 mai 2012 20:49
    Modérateur
  • Désolé pour la réactivité, l'alerte était partie dans les indésirables, alors que les précédentes arrivaient très bien.

    J'ai vu qu'on pouvait se contenter d'afficher en mode compatibilité, je ne me rappelle pas si c'est le cas par défaut.

    Apparemment, pour trouver le téléchargement et voir les conditions il y a un peu de temps à passer dessus.

    Peut-être demain.

    Merci pour l'info.

    Ah oui alors quelques petites précisions : le but était de savoir développer un site ASP.Net, voilà ça c'est fait, maintenant il faut savoir se faire recruter là-dessus, ça c'est encore un autre sujet. Etre débutant sur .Net et confirmé sur autre chose, ça n'a pas l'air de déplacer des montagnes d'enthousiasme partout.

    Et puis, passer effectivement à 3.5 pour WCF, WPF, et à 4.0 pour MVC par exemple ...

    C'est dans les tuyaux, mais ... avec des journées de 24 heures.

    Par curiosité, si il y a un correctif je vais essayer de l'installer sur ma machine. Les mises à jours ont été vérifiées hier à l'occasion de la réinstallation de Csharp Express 2010. Cela étant, je ne suis pas à l'abri d'avoir à fouiller dans mes sauvegardes d'images de disque, vu que j'ai un autre problème d'installation, concernant Entity Framework, je n'ai pas su installer tous les pilotes de bases de données. 

    Sur d'autres produits, il fallait impérativement désactiver tous les logiciels de protection pendant l'installation. Si c'est le problème aussi avec CSharp Express 2010, c'est gonflé, vu que le téléchargement et l'installation sont regroupés dans le même programme. Franchement, brancher à Internet une machine dont tous les logiciels de protection sont désactivés, le tout avec droits administrateur histoire d'être sûr de ne rien oublier pour susciter les catastrophes, je ne suis pas bien sûr qu'il y ait à creuser longtemps pour avoir des doutes sur la démarche.

    En disant tout ça il est vrai que je déborde de la question d'un menu dynamique sous IE8.




    • Modifié Gloops mercredi 30 mai 2012 18:31
    mercredi 30 mai 2012 17:01