Overblog Suivre ce blog
Editer l'article Administration Créer mon blog

Présentation

  • : Romagny13 - Du .NET,du pur .NET
  • Romagny13 - Du .NET,du pur .NET
  • : Cycle de progression Faire (quelque chose qui marche) -> comprendre ce que l’on fait/comment cela marche -> pousser plus loin les notions
  • Contact

Recherche

Articles Récents

2 février 2014 7 02 /02 /février /2014 01:08

 III - Eléments de navigation

3         types de controls principalement permettent la navigation : menu,treeview,sitemappath

A-     Il faut déjà definir le plan du site grace à un fichier xml .sitemap

<?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="Page d'accueil du site">

        <siteMapNode url="~/Contact.aspx" title="Contact"  description="Contacter le support" />

       

    </siteMapNode>

</siteMap>

 

B - dans le fichier de configuration web.config

<system.web>

    <siteMap defaultProvider="MySiteMapProvider" enabled="true">

      < providers>

        < add name="MySiteMapProvider" type="System.Web.XmlSiteMapProvider"  siteMapFile="Web.sitemap"/>

      </providers>

    </siteMap>

 

C – ajouter à la masterpage (ou à chaque page si pas de masterpage) un control<asp:SiteMapDataSource> liée  ce fournissseur

<asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server"/>

 

D - controls de navigation

-          Menu

 

 <asp:Menu ID="Menu1" runat="server" DataSourceID="SiteMapDataSource1" Orientation="Horizontal" StaticDisplayLevels="2">

            </asp:Menu>

 

 

Astuces :

Menu statique/dynamique(dynamique : s’ouvre quand l’utilisateur passe la souris dessus, StaticDisplayLevels="2" permet d’afficher « sur une seule ligne »)

ajouter des éléments au menu par code

<asp:Menu ID="Menu1" runat="server" Orientation="Horizontal">

                <Items>

                    <asp:MenuItem NavigateUrl="~/Default.aspx" Text="Accueil" Value="Accueil">

                    </asp:MenuItem>

                     <asp:MenuItem NavigateUrl="~/Contact.aspx" Text="Contact" Value="Contact">

                    </asp:MenuItem>

                </Items>

            </asp:Menu>

 

-          Treeview

<asp:TreeView ID="TreeView1" runat="server" DataSourceID="SiteMapDataSource1">

                </asp:TreeView>

 

Astuces il est possible définir la source par fichier xml avec un XmlDataSource, il suffit de renseigner la DataSourceId avec le nom de source de données

<asp:XmlDataSource ID="XmlDataSource1" runat="server" DataFile="~/mymenu.xml" />

 

http://msdn.microsoft.com/fr-fr/library/7a9swst5(v=vs.80).aspx

ajouter des éléments par code au treeview

<asp:TreeView ID="TreeView1" runat="server">

                    <Nodes>

                        <asp:TreeNode Text="Accueil" Value="Accueil" NavigateUrl="~/Default.aspx">

                            <asp:TreeNode Text="Contact" Value="Contact" NavigateUrl="~/Contact.aspx"></asp:TreeNode>

                        </asp:TreeNode>

                    </Nodes>

                </asp:TreeView>

 

 

-          SiteMapPath (affiche le chemin en cours) – pas de datasourceid à indiquer pour ce control

<asp:SiteMapPath ID="SiteMapPath1" runat="server">

                </asp:SiteMapPath>

 

 

A-     URL MAPPING

B-      Localisation resourcekey de sitemapnode/navigation multilingue

Partager cet article

Repost 0
Published by Romagny13 - dans ASP.NET
commenter cet article

commentaires