IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

[VS010]comment mettre en évidence un lien de menu cliqué par l'utilisateur


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2011
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 71
    Par défaut [VS010]comment mettre en évidence un lien de menu cliqué par l'utilisateur
    Bonsoir!
    j'ai le menu suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     <div id="menu">
                      <asp:Menu ID="Menu1" runat="server" EnableViewState="False"
                      Orientation="Horizontal" IncludeStyleBlock="false">
                         <Items>
                            <asp:MenuItem NavigateUrl="~/Default.aspx" Text="Accueil"/>
                            <asp:MenuItem NavigateUrl="Aboutus.aspx" Text="Présentation"/>
                            <asp:MenuItem NavigateUrl="~/Default.aspx" Text="Nos Activités"/>
                            <asp:MenuItem NavigateUrl="~/Default.aspx" Text="Nos Réalisations"/>
                            <asp:MenuItem NavigateUrl="~/Default.aspx" Text="Vous"/>
                            <asp:MenuItem NavigateUrl="~/Default.aspx" Text="Contact"/>
                        </Items>
                     </asp:Menu>
     
                 </div>
    et voici son css:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    #menu{
    		margin:0 auto;
    		width:750px;
    	}
    #Menu1 {
      list-style:none;
    				display:block;
    				float:left;
    				background:#f4f4ec;		
    				border-bottom:4px solid #b42929;
      }
     
    	#Menu1 ul { list-style:none;margin:0;padding:0; }
     
    	#Menu1 a { display:block;
    					float:left;
    					color:#44494f;
    					text-transform:uppercase;
    					font-size:11px;
    					font-weight:bold;
    					line-height:35px;
    					border:solid #cbc9c9;
    					border-width:1px 1px 0 1px;
    					text-decoration:none;
    					padding:0 2.545em;				 }
    	#Menu1 a.static {text-decoration:none; }
     
     
    	#Menu1 a.static.selected { display:block;
    					float:left;
    					background:url(../Images/arpmenu.jpg) repeat-x;					
    					color:#fff;
    					text-transform:uppercase;
    					font-size:11px;
    					font-weight:bold;
    					line-height:35px;
    					border:solid #e1e1d3;
    					border-width:1px 1px 0 0;
    					text-decoration:none;
    					padding:0 25px;	 }
     
    	#Menu1 a.static.highlighted {color:#b42929;}
    Mon problème est que le lien sélectionné n'affiche pas l'image attendu bref rien ne s'affiche Il n'y a pour ainsi dire aucune différence entre un lien sélectionné et un lien non sélectionné. Comment faire pour remédier à ce problème?
    merci d'avance!

  2. #2
    Membre éprouvé
    Inscrit en
    Septembre 2007
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 137
    Par défaut
    Normalement c'est juste du CSS á adapter: a:visited

  3. #3
    Membre averti
    Femme Profil pro
    Inscrit en
    Février 2008
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 36
    Localisation : Canada

    Informations forums :
    Inscription : Février 2008
    Messages : 50
    Par défaut
    Citation Envoyé par tortuegenie Voir le message
    Normalement c'est juste du CSS á adapter: a:visited
    salut ,
    je crois pas que c'est ce qu'il cherche ,il voulait avoir une rubrique de menu en évidence lorsque sa page est active alors que le a:visited mets tous les liens déjà visités en style différent (ça dépend du style définis sur le a:visited de css )
    alors dans votre cas le css ne peut servir a rien soit le javascript ou asp.net qui permet de régler cela ... a moins que je me trompe

  4. #4
    Membre confirmé
    Inscrit en
    Janvier 2011
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 71
    Par défaut
    slt, rokirakat a vu juste. Alors comment faire?

  5. #5
    Membre confirmé
    Inscrit en
    Janvier 2011
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 71
    Par défaut comment spécifier le menu courant sur un menu de navigation?
    Bonsoir!
    quelqu'un n'aurait t-il pas une solution à mon problème ou même un lien qui pourra m'aider? suis vraiment coincé!
    merci d'avance

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : Pays-Bas

    Informations forums :
    Inscription : Décembre 2005
    Messages : 186
    Par défaut
    T'as créé 2 topics sur le même sujet, ici il y a effectivement les éléments qui permettent de répondre.
    Utilises les propriétés du type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    StaticSelectedStyle-CssClass="nomdeclasse"
    Ca te donne un truc du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <asp:Menu ID="Menu1" runat="server" EnableViewState="False"
          Orientation="Horizontal" StaticSelectedStyle-CssClass="taclasse">
    Ensuite pour indiquer le lien selectionné, c'est dans la partie VB, tu te bases sur le nom de page, une variable de session, ou ce que tu veux qui te permet de savoir quel est le menu courant qui est actif, et tu indiques (par exemple, si c'est le 3e elements du menu qui est selectionné)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Menu1.Items(2).Selected = True

  7. #7
    Membre confirmé
    Inscrit en
    Janvier 2011
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 71
    Par défaut
    qu'est ce que je dois mettre exactement dans mon code(VB ou C#) comme tu l'as suggéré? car je ne suis pas sûr d'avoir tout saisi. je rappelle que mon menu est sur ma Masterpage et que toutes les pages enfants en hérite.

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : Pays-Bas

    Informations forums :
    Inscription : Décembre 2005
    Messages : 186
    Par défaut
    J'ai pas assez d'élément pour te répondre précisément, tout dépend si tes menus donnent des liens avec ou sans paramètre, si tu veux baser la reconnaissance du menu sur une variable de session (utile si le menu permet ensuite de naviguer sur différentes pages) ou alors sur le nom de la page (un menu = une page).
    Je pars de l'hypothèse que t'as pas de paramètre d'URL, que t'as une seule page par menu. Ca te donne dans ce cas un truc du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
            Dim myPage As String = Request.ServerVariables("SCRIPT_NAME")
            myPage = myPage.Substring(myPage.LastIndexOf("/") + 1)
     
            For Each lien As MenuItem In Menu1.Items
                If lien.NavigateUrl = myPage Then
                    lien.Selected = True
                End If
            Next
    La partie avec le substring sert à éliminer du nom de page le répertoire courant si tu ne te trouves pas à la racine du site.

  9. #9
    Membre confirmé
    Inscrit en
    Janvier 2011
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 71
    Par défaut
    Je ne sais pas pourquoi mais j'ai une erreur sur ServerVariables. L'environnement VS2010 me dit que:
    Un membre System.WebHttpRequestServerVariables ne pouvant pas être appelé ne peut pas être utilisé comme une méthode.
    Qu'est ce que cela veut dire? Y a t-il une classe à importer ou bien c'est l'endroit où j'ai écrit le code qui pose problème; en effet ce bout de code je l'ai placé au chargement de ma MasterPage( Page_Load)

Discussions similaires

  1. [Wiki] Comment mettre en évidence du code dans une page wiki ?
    Par djibril dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 30/12/2018, 14h37
  2. [Dojo] Comment mettre en évidence des champs dojo obligatoire
    Par khattat dans le forum Bibliothèques & Frameworks
    Réponses: 3
    Dernier message: 19/10/2011, 16h28
  3. Comment mettre une image en lien ?
    Par E1000ien dans le forum Langage
    Réponses: 5
    Dernier message: 12/12/2007, 15h52
  4. [Word] Comment mettre en évidence des mots dans un document ?
    Par ecocentric dans le forum Framework .NET
    Réponses: 1
    Dernier message: 03/08/2006, 16h31
  5. Mettre en évidence image/lien pointée par curseur
    Par aokiseiichiro dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 21/01/2006, 12h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo