Navigation dans les formulaires Web
ASP.NET est livré avec des commandes de navigation intégrées.
Navigation sur le site Web
La maintenance des menus pour les grands sites Web est difficile et prend du temps.
Dans ASP.NET, les menus peuvent être stockés dans des fichiers, ce qui facilite leur maintenance. Le fichier est généralement nommé web.sitemap et est stocké dans le répertoire racine du site Web.
De plus, ASP.NET dispose de trois contrôles de navigation principaux :
- Menus dynamiques
- TreeViews
- Chemin du plan du site
Fichier de plan de site
Dans ce tutoriel, utilisez le fichier de plan de site suivant :
<siteMap>
<siteMapNode title="Accueil" url="/aspnet/w3home.aspx">
<siteMapNode title="Services" url="/aspnet/w3services.aspx">
<siteMapNode title="Formation" url="/aspnet/w3training.aspx"/>
<siteMapNode title="Support" url="/aspnet/w3support.aspx"/>
</siteMapNode>
</siteMapNode>
</siteMap>
Règles de création des fichiers sitemap :
- Le fichier XML doit contenir la balise <siteMap> > La balise <siteMap> ne peut avoir qu'un seul nœud enfant <siteMapNode> (page "accueil") Chaque <siteMapNode> >Chaque <siteMapNode> possède des propriétés qui définissent le titre et l'URL de la page
le fichier de plan du site doit être situé dans le répertoire racine du site et les propriétés de l'URL doivent être relatif dans le répertoire racine. Le contrôle Menu dynamique
<asp:Menu> affiche un menu de navigation de site standard.
Exemple de code :
<asp:SiteMapDataSource id="nav1" runat="server" />
</form>
Le contrôle <asp:Menu> dans l'exemple ci-dessus est un espace réservé permettant au serveur de créer un menu de navigation. La source de données du contrôle
est définie par la propriété DataSourceId. id="nav1" Connectez la source de données au contrôle <asp:SiteMapDataSource>. Le contrôle
<asp:SiteMapDataSource> se connecte automatiquement au fichier de plan de site par défaut (web.sitemap). Le contrôle
TreeView
<asp:TreeView> peut afficher un menu de navigation à plusieurs niveaux.
Ce menu ressemble à un arbre avec des branches et des feuilles et peut être ouvert ou fermé avec les symboles + ou -.
Exemple de code :
< form runat="server">
<asp:TreeView runat="server" DataSourceId="nav1" />
</form>
Dans l'exemple ci-dessus Le contrôle <asp:TreeView> est un espace réservé permettant au serveur de créer un menu de navigation. La source de données du contrôle
est définie par la propriété DataSourceId. id="nav1" Connectez la source de données au contrôle <asp:SiteMapDataSource>. Le contrôle
<asp:SiteMapDataSource> se connecte automatiquement au fichier de plan de site par défaut (web.sitemap).
SiteMapPath
Le contrôle SiteMapPath affiche un pointeur (chemin de navigation) vers la page actuelle. Le chemin apparaît sous la forme d'un lien cliquable vers la page parent.
Contrairement aux contrôles TreeView et Menu, le contrôle SiteMapPath n'utilise pas le SiteMapDataSource. Le contrôle SiteMapPath utilise le fichier web.sitemap par défaut.
Astuce : Si le SiteMapPath ne s'affiche pas correctement, cela est probablement dû à une erreur d'URL (erreur d'impression) dans le fichier web.sitemap.
Exemple de code :
<asp:SiteMapPath runat="server" />
</form>
Le contrôle <asp:SiteMapPath> dans l'exemple ci-dessus est un espace réservé permettant au serveur de créer un menu de navigation.