Académique Documents
Professionnel Documents
Culture Documents
2010/2011
ASP.NET
2010/2011
ASP.NET
2010/2011
ASP.NET
Framework .net
Le Framework Environnement dexcution de .net. Application et mmoire manages par la CLR. Indpendant des syntaxes. Vie dune application .net Compilation des sources vers le MSIL (MicroSoft Intermediate Language). Compilation du code MSIL vers le code natif machine : JIT Compiler (Just In Time), Pr JIT possible. Excution du code en Binaire.
2010/2011
ASP.NET
SOAP (Simple Access Object Protocol), permet la communication des objets de manire transparente pour le dveloppeur.
WDSL (Web Services Description Language), format XML utilis pour dcrire les services dun rseau. UDDI (Universal Description, Discovery and Integration), annuaire des Web Services.
2010/2011
ASP.NET
Les langages
Les langages 27 langages supports pour le moment C#, VC++, VB.net, Jscript, Perl, Small Talk, Cobol, Fortan, Delphi Les langages doivent rpondre aux contraintes du MSIL. Une classe en C# peut-tre utilise dans un programme crit en VB.net. 27 syntaxes diffrentes plutt que 27 langages ?
Le C# A mi-chemin entre C++ et Java. Rponse de Microsoft Java : syntaxe et fonctionnalits similaires. Bnficie du Framework.net et sa CLR.
2010/2011
ASP.NET
ASP . NET
Quest ce quASP.net ? Version .NET dASP. : utilis pour la cration de site Web dynamique 3 types de pages : ASPx, ASMx (assembly) pour les Web services, ASCx (control) pour les contrles utilisateurs. ASP.net fait partie intgrante du FrameWork et bnficie de toutes ses fonctionnalits (classes de base). Les Pages ASP.net sont compils et excut par la CLR : code manag, possibilit de tracing et de debugging . Le code peut-tre spar totalement de la partie prsentation. Apparition des contrles serveurs. Comparable J2EE + RMI Sappuie toujours sur IIS 5, mais multi-processus au lieu de multi-thread.
2010/2011
ASP.NET
ASP . NET
Les contrles serveurs 45 contrles disponibles (Listbox, treeview, calendar, adrotator, ) Excuts sur le serveur. Renvoie du code HMTL au client en fonction du navigateur utilis (compatible HMTL 3.2). Masque au dveloppeur la communication client / serveur.
2010/2011
ASP.NET
Asp.net
<%@ Page Language="c#" %> <HTML> <BODY> <H1>Table des factorielles</H1> <% int i,fact; for ( i=1,fact=1 ; i<4 ; i++, fact*=i ) { Response.Write( i + "! =" + fact + "<BR>" ); } %> </BODY> </HTML
2010/2011
ASP.NET
10
Asp.net
<%@ Page Language="c#" %> <HTML> <BODY> <H1>Table des factorielles</H1> <% int i,fact; for ( i=1,fact=1 ; i<4 ; i++, fact*=i ) { Response.Write( i + "! =" + fact + "<BR>" ); } %> </BODY> </HTML
du code C#
<HTML> <BODY> <H1>Table des factorielles</H1> 1! = 1<BR> 2! = 2<BR> 3! = 6<BR> </BODY> </HTML>
2010/2011
ASP.NET
11
Asp.net
Philosophie ASP.NET
Sparer
rendu graphique traitement
2 fichiers
.aspx
le code de prsentation et celui des contrles fichier XTHML (HTML 4.0 formul en XML) Web form
.aspx.cs , .aspx.vb ,
fichier dit codebehind classe contenant les traitements
2010/2011
ASP.NET
12
Contrles
Les contrles
Composants graphiques pour lcriture de pages ASP.NET Pour agir avec l'utilisateur : lui prsenter de l'information Pour ragir aux actions de l'utilisateur : dclencher des traitements Utilisation en drag-and-drop dans VS pour la conception page web
Analogue atelier conception IHM en client lourd
Classe / Objet
Proprits vnements
: les caractristiques d'affichage (ex. Text pour un TextBox) : ractions (clic, frappe, changement, )
autant d'objets par page que de contrles "dposs" sur la page interaction avec la page interaction avec les objets rendu HTML de la page partir de l'tat des objets
2010/2011
ASP.NET
13
TP1
Construire une page aspx partir dun formulaire HTML standard et de mettre en
2010/2011
ASP.NET
15
Elle contient les zones de saisie de lutilisateur dont les donnes devront tre
envoyes sur le serveur. Elle possde des attributs obligatoires :
method pour indiquer de quelle manire sont envoyes les donnes sur le
serveur : soit codes dans lurl de la requte pour la mthode GET soit stockes dans le corps de la requte pour la mthode POST . Par dfaut, une page aspx utilise la mthode POST. action pour indiquer lurl laquelle sont envoyes les informations. Il faut savoir quune page aspx poste ses donnes sur elle-mme cest--dire que lurl denvoi est celle de la page elle-mme tout simplement !
2010/2011
ASP.NET
17
2010/2011
ASP.NET
18
Contrle de slection
Contrle de saisie et bouton de <div class="region"> <h3>Rgion: </h3> soumission <SELECT name="ddlRegion"> <div class="date"> <OPTION VALUE="1"> Rabat </OPTION> <h3>Date: </h3> <OPTION VALUE="2"> Casa </OPTION> <input name="txtDate type="text"/> <OPTION VALUE="3"> Kenitra </OPTION> <input name="btnGo type="submit <OPTION VALUE="4"> Sale </OPTION> value="Go" /> <OPTION VALUE="5"> Ouajda </OPTION> </div> <OPTION VALUE="6"> Fs </OPTION> <OPTION VALUE="7"> Meknes </OPTION> <OPTION VALUE="8"> Nadour </OPTION> <OPTION VALUE="9"> Tetouane </OPTION> <OPTION VALUE="10"> Errachidia </OPTION> <OPTION VALUE="11"> Ouarzazate </OPTION> <OPTION VALUE="12"> Zagoura </OPTION> <OPTION VALUE="13"> Essaouira </OPTION> <OPTION VALUE="14"> Saf </OPTION> <OPTION VALUE="15"> Agadir </OPTION> <OPTION VALUE="16"> Marrakeche </OPTION> <OPTION VALUE="17"> Taroudante </OPTION> <OPTION VALUE="18"> Tantan </OPTION> <OPTION VALUE="19"> Tata </OPTION> <OPTION VALUE="20"> Laayoune </OPTION> </SELECT> </div> 2010/2011 ASP.NET 19
2010/2011
ASP.NET
20
<form method="post" action="Default.aspx"> <form method="post" action="Default.aspx" runat="server"> <SELECT name="ddlRegion"> <SELECT name="ddlRegion" runat="server" id="ddlRegion"> <input name="txtDate type="text"/> <input name="txtDate" type="text" runat="server" id="txtDate"/> <div class="resultat"> <div class="resultat" runat="server" id="resultat">
2010/2011
ASP.NET
21
et dot dvnements qui sont dclenchs en gnral par des actions de lutilisateur sur le
contrle
2010/2011
ASP.NET
22
Le formulaire doit tre galement runat="server" et est alors vu comme un contrle de type HtmlForm Avant de programmer le traitement serveur, il reste indiquer le langage de choix dans ce quon appelle une directive de page. Celle-ci est crite au tout dbut de la page et est lue ct serveur par ASP.NET.
Dans le cas prsent, nous allons indiquer au serveur le langage de votre choix, en
utilisant lattribut Language :
2010/2011 ASP.NET 23
Code C#
<%@ Page Language="C#" %> <html> </html>
2010/2011
ASP.NET
24
Code C#
<% if (txtDate.Value != "") { resultat.InnerHtml = "Rsultat de la recherche pour le " + txtDate.Value; } %>
2010/2011 ASP.NET 25
2010/2011
ASP.NET
26
txtDate.Value = DateTime.Now.ToShortDateString()
%>
Code C#
<% txtDate.Value = DateTime.Now.ToShortDateString() ; %>
La proprit DateTime.Now du Framework 2.0 donne la date du jour que lon formate avec ToShortDateString().
2010/2011
ASP.NET
27
Code C#
<% if (txtDate.Value != "") { resultat.InnerHtml = "Rsultat de la recherche des annonces dans la rgion " + ddlRegion.Items[ddlRegion.SelectedIndex].Text + " pour le " + txtDate.Value; } %> ddlRegion est un contrle de type HtmlSelect et contient une collection doptions appele Items. Chacune des options est accessible via un index, llment slectionn en cours tant positionn lindex donn par la proprit SelectedIndex du contrle.
2010/2011
ASP.NET
28
2010/2011
ASP.NET
29
31
TP2
Le contexte fonctionnel reste identique lexercice prcdent ceci prs que vous allez maintenant charger la liste droulante de manire dynamique partir du fichier
texte rgions.txt.
2010/2011
ASP.NET
34
munie du fameux attribut runat="server" pour indiquer au serveur que ce code doit
tre excut ct serveur. Dans ce bloc de dclaration de code, les lignes vont tre compiles avec une approche oriente objet cest--dire dans le contexte dune classe gnre dynamiquement par ASP.NET et associe la page web, cest la classe page. Aussi nous allons incorporer les lignes de code dans la procdure de rponse lvnement de chargement de la page en mmoire, appel Page_Load
2010/2011
ASP.NET
35
Code C#
<script runat="server" > public void Page_Load() { if (ddlRegion.SelectedIndex == 2) {} } </script>
2010/2011
ASP.NET
36
ASP.NET
37
2010/2011
ASP.NET
38
2010/2011
ASP.NET
39
2010/2011
ASP.NET
40
2010/2011
ASP.NET
42
2010/2011
ASP.NET
44
TP3
Le contexte fonctionnel reste identique lexercice prcdent ceci prs quau lieu de construire un tableau de rsultat de la recherche sur la procdure Page_Load comme prcdemment, nous allons associer le traitement directement lvnement clic de lutilisateur sur le bouton Go. Nous verrons finalement comment associer le traitement lvnement de changement de slection dans la liste droulante.
Principe
Lide est de fournir un modle de dveloppement similaire celui dont vous disposez dans du script client pour programmer des procdures en rponse des vnements dans la page. La diffrence est que si lvnement est bien dclench ct client le traitement en rponse celui-ci est en revanche effectu sur le serveur : ce procd
Liez lvnement ServerClick la procdure de rponse appele btnGo_ServerClick. Ajoutez la procdure btnGo_ServerClick lintrieur de la balise de script
2010/2011
ASP.NET
47
1\Solution\Liste
des
sender
As
Object,
ByVal
As
48
2010/2011
ASP.NET
50
btnGo_ServerClick
2010/2011
ASP.NET
51
As
2010/2011
ASP.NET
52
2010/2011
ASP.NET
53
TP4
Mettre en uvre les contrles serveur dASP.NET 2.0 et de comprendre lintrt de lapproche base sur lutilisation de ces composants.
Contexte fonctionnel
Si vous voulez ajouter un calendrier la page pour faciliter la saisie de la date par lutilisateur. Le calendrier est invisible au chargement de la page et
2010/2011
ASP.NET
55
Avec lapproche composant, ASP.NET permet le contrle ct serveur du comportement de certains lments lors dun post pack, mais cette fois en construisant directement vos pages ct serveur avec des contrles labors. Ces contrles sont reprsents par des balises qui ne sont connues que du moteur ASP.NET. Donc pour la plupart, ils sont associs une reprsentation graphique base sur des contrles html standard, quASP.NET construit dynamiquement la fin de lexcution de la page juste avant de renvoyer la page de rponse au navigateur. Chaque contrle est dailleurs capable dadapter son rendu en fonction du navigateur cible. Certains contrles nont mme pas de reprsentation graphique. Lobjectif est de fournir un ensemble de composants qui encapsulent tout un comportement dynamique que le dveloppeur peut facilement contrler via des proprits, des mthodes et des vnements. Par exemple, vous avez des contrles pour vous aider configurer une connexion sur une base de donnes
2010/2011
ASP.NET
56
2010/2011
ASP.NET
57
2010/2011
ASP.NET
58
<asp:Calendar ID="Calendar1" runat="server" OnSelectionChanged="Calendar1_SelectionChanged > </asp:Calendar> Ajoutez la procdure Calendar1_SelectionChanged lintrieur de la balise de script :
Code VB.NET
<script runat="server" > Protected Sub Calendar1_SelectionChanged(ByVal sender As Object,_ByVal e As System.EventArgs) End Sub </script>
Code C#
<script runat="server" > protected void Calendar1_SelectionChanged(object sender, EventArgs e) {} </script>
2010/2011 ASP.NET 59
Code VB.NET
<script runat="server" > Protected Sub Calendar1_SelectionChanged(ByVal sender As Object, ByVal e As System.EventArgs) txtDate.Value = Calendar1.SelectedDate.ToShortDateString() End Sub </script>
Code C#
<script runat="server" > protected void Calendar1_SelectionChanged(object sender, EventArgs e) { txtDate.Value = Calendar1.SelectedDate.ToShortDateString(); } </script>
La proprit SelectedDate retourne un objet de type DateTime . la mthode ToShortDateString() de la classe DateTime permet de rcuprer la date sous forme de chane de caractres.
2010/2011
ASP.NET
60
2010/2011
ASP.NET
61
Code C#
<script runat="server" > protected void Button1_Click(object sender, EventArgs e) { Calendar1.Visible = !Calendar1.Visible ; } </script>
2010/2011
ASP.NET
62
Code VB.NET
<script runat="server" > Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Calendar1.Visible = Not Calendar1.Visible If Not String.IsNullOrEmpty(txtDate.Text) Then Dim dateCourante As DateTime = Convert.ToDateTime(txtDate.Value) Calendar1.VisibleDate = dateCourante Calendar1.SelectedDate = dateCourante End If End Sub </script>
Code C#
<script runat="server" > protected void Button1_Click(object sender, EventArgs e) { Calendar1.Visible = !Calendar1.Visible ; if (Calendar1.Visible & !String.IsNullOrEmpty(txtDate.Value)) Calendar1.VisibleDate = Calendar1.SelectedDate = Convert.ToDateTime(txtDate.Value); } </script>
2010/2011 ASP.NET 63
TP5
Montrer tout lintrt dun environnement de dveloppement tel que Visual Studio. En mode Source, supposons que vous voulez ajouter des attribut lune des balises par exemple <body> : positionnez le curseur droite de la lettre y et cliquez la barre despace du clavier pour crire le nom de lattribut. IntelliSense se dclenche et vous propose une liste dattributs pour la balise. LIntelliSense est galement disponible au niveau du code inline dans des balises <script runat=server>.
La Bote outils pour remplacer tous les contrles html standards par les contrles serveur web dASP.NET 2.0
2010/2011
ASP.NET
65
Slectionnez le contrle et cliquez F4 pour afficher la fentre de proprits de Visual Web Developer. Renommez le contrle en txtDate (ID = txtDate) Le systme dtecte un problme vient de la procdure SelectionChanged qui charge la zone de texte avec la date slectionne dans le calendrier. Changez la proprit Value par Text.
2010/2011 ASP.NET 66
2010/2011
ASP.NET
67
2010/2011
ASP.NET
68
La proprit Text donne le message affich lemplacement du contrle de validation. Le message dans ErrorMessage est utilis par le contrle ValidationSummary pour afficher le message derreur dtaill.
2010/2011
ASP.NET
69
Faites un glisser dplacer du contrle ValidationSummary depuis la catgorie Validation de la bote outils au sommet de la page (par exemple).
Sauvegardez et excutez la page Entrez une date incorrecte manuellement dans la zone de texte. Cliquez sur Go. Testez la vrification du champ obligatoire si vous ne saisissez aucune date
2010/2011
ASP.NET
70
sera pas bloqu par les validations de la date. Par contre, la validation a lieu
ct serveur sur le clic du bouton Go Le calendrier saffiche maintenant correctement, le serveur neffectuant plus
2010/2011
ASP.NET
71
dans la zone de notification de la barre de tches de Windows XP, vous constatez que Visual Web Developer a lanc une instance du serveur de test pour vous permettre de tester lapplication. Attention : ce mini serveur web comporte quelques limitations et nest propos que pour vous donner les moyens de dvelopper et tester vos applications sans IIS dans un premier temps. Par exemple, il ne supporte pas la mtabase, il na pas la capacit denvoyer des emails ou il utilise lidentit de lutilisateur connect au lieu du compte ASPNET(IIS5) ou NETWORK SERVICE(IIS6) pour sexcuter
2010/2011
ASP.NET
72
le serveur web de test a constat que vous aviez sauv la page et en a donc dduit quil fallait redemander une compilation de celle-ci avant de la rexcuter. Cest le principe dit de la compilation dynamique.
2010/2011
ASP.NET
73
2010/2011
ASP.NET
74
TP6
2010/2011
ASP.NET
75
Introduire les principes de base de laccs aux donnes dans une page
ASP.NET.
Contexte fonctionnel
Remplacer la table html de rsultat par une grille de donnes en utilisant le nouveau contrle GridView dASP.NET. Brancher sur le clic du bouton Go une vritable recherche sur une base de donnes SQL Server Express via une procdure stocke. La recherche doit seffectuer partir de la rgion slectionne et de la date qui sont les paramtres de la procdure stocke utilise. Vous allez travailler avec une base de donnes existante de type SQL Server, appele AffairesSansRisque
2010/2011
ASP.NET
76
2010/2011
ASP.NET
77
2010/2011
ASP.NET
78
2010/2011
ASP.NET
79
2010/2011
ASP.NET
80
2010/2011
ASP.NET
81
2010/2011
ASP.NET
82
2010/2011
ASP.NET
83
2010/2011
ASP.NET
84
2010/2011
ASP.NET
85
2010/2011
ASP.NET
86
Affichez la balise active du contrle GridView. Cochez les options Activer la pagination, Activer le tri, Activer la slection.
2010/2011
ASP.NET
87
Sauvegardez la page Default.aspx et excutez-la (clic droit > afficher dans le navigateur).
Cliquez sur la rgion Rhne-Alpes, entrez la date 01/01/2006 puis cliquez sur Go.
2010/2011
ASP.NET
88
Notez les types de champs disponibles. Renommez les enttes de chaque colonne.
Changez lordre des colonnes avec les boutons. Bouton pour supprimer les colonnes slectionnes.
2010/2011
ASP.NET
89
2010/2011
ASP.NET
90
2010/2011
ASP.NET
91
TP7
MASTER PAGE
2010/2011
ASP.NET
92
TP 7: Master page
Objectif
Crer une page matre qui servira de modle aux pages de contenu du site. Crer des pages de contenu qui hritent de la page modle.
Contexte fonctionnel
cohrente des pages de votre application. Une page matre unique dfinit
l'apparence et le comportement standard que vous souhaitez pour toutes les pages (ou groupe de pages) de votre application. Vous pouvez ensuite crer des pages de contenu individuelles comportant les lments que vous souhaitez afficher. Lorsque les utilisateurs demandent les pages de contenu, ils fusionnent avec la page matre pour produire une sortie qui associe la prsentation de la page matre au contenu de la page de contenu.
2010/2011
ASP.NET
93
TP 7: Master Page
Atelier 1
Une page matre est un fichier ASP.NET possdant l'extension .master (*) La page matre est identifie par une directive @ Master
<%@ Master Language="C#" %>
ContentPlaceHolder
Dfinit relative une rgion pour le contenu dans une page matre ASP.NET. Placer l o vous souhaitez que le contenu soit modifiable
<asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server"> </asp:ContentPlaceHolder>
2010/2011
ASP.NET
94
Logo
Espace membre
Services
Menu des services Pied de page
2010/2011
ASP.NET
95
2010/2011
ASP.NET
96
2010/2011
ASP.NET
97
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits= " MasterPage" MasterPageFile="~/MaitrePage.Master" Title="Test" %>
Dans une page enfant, cette zone de contenu dynamique est un contrle <asp :Content> qui est reli un contrle ContentPlaceHolder parent par lattribut ContentPlaceHolderID
<asp:Content ID="Content1" ContentPlaceHolderID="Body" Runat="Server"> </asp:Content>
2010/2011
ASP.NET
98
2010/2011
ASP.NET
99
2010/2011
ASP.NET
100
2010/2011
ASP.NET
101
2010/2011
ASP.NET
103
<%@ Page Title="Page d'accueil" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <%@ MasterType VirtualPath="~/Site.master" %> <asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent"> </asp:Content> <asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"> <div> <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label> <asp:Button ID="Button1" runat="server" Text="Get" onclick="Button1_Get" /> <asp:Button ID="Button2" runat="server" Text="Set" onclick="Button2_Set" /> </div> </asp:Content>
2010/2011
ASP.NET
104
protected void Button1_Get(object sender, EventArgs e) { //pour rcuprer la valeur du label de la page //maitre dans Lable1 de La page Default Label1.Text = Master.GetSetLabelDePageMaitre ; }
2010/2011
ASP.NET
105
protected void Button2_Set(object sender, EventArgs e) { //pour chnager la valeur du label de la page maitre Master.GetSetLabelDePageMaitre = "je change la valeur de label de la page maitre "; }
2010/2011
ASP.NET
106
TP7 : Excuter
2010/2011
ASP.NET
107
2010/2011
ASP.NET
108
2010/2011
ASP.NET
109
TP8
2010/2011
ASP.NET
111
TP8 : DetailsView
Le contrle DetailsView vous permet la fois dafficher, de
2010/2011
ASP.NET
112
2010/2011
ASP.NET
113
2010/2011
ASP.NET
114
Cliquez sur la flche du control DetailsVeiw Modifier les champs Slectionnez id_client modifiez le hederText avec numClient
2010/2011
ASP.NET
115
2010/2011
ASP.NET
116
2010/2011
ASP.NET
117
TP 8: La Proprit DefaultMode:
Permit dobtenir ou dfinit le mode d'entre par dfaut du contrle Il existe 3 modes : Insert ,Edit et ReadOnly
2010/2011
ASP.NET
118
TP 8: La Proprit DefaultMode:
Insert Edit Read Only
2010/2011
ASP.NET
119
TP8 : davoir laffichage dans une page et linsertion dans une autre
Atelier 2
Objectif
Cette fois cest davoir laffichage dans une page et linsertion dans une autre
Cre une nouvelle page ClientInsert.aspx Mme instructions que lAtelier 1 Dans la fentre Proprits du DetailsVeiw changez DefaultMode de ReadOnly Insert Activer la insertion Excutez
2010/2011
ASP.NET
120
TP8 : davoir laffichage dans une page et linsertion dans une autre
Dans la page ClientAffiche Faites un glisser dplacer du contrle HyperLink dans la page Dans la fentre Proprits du HyperLink
changer la valeur de Text avec Ajouter un Client NavigateUrl par ClientInsert.aspx
2010/2011
ASP.NET
121
TP8 : davoir laffichage dans une page et linsertion dans une autre
Dans le code la page ClientInsert.aspx ajouter la mthode suivante
2010/2011
ASP.NET
122
TP8 : davoir laffichage dans une page et linsertion dans une autre
Dans le code la page ClientInsert.aspx ajouter la mthode suivante
2010/2011
ASP.NET
123
TP9
2010/2011
ASP.NET
124
2010/2011
ASP.NET
125
TP 9 : Plan de site
XmlSiteMapProvider : permet de lier les contrles serveur de menu (type TreeView, Menu) une source de donnes au format Xml appele fichier de plan de site, contenant ladresses des diffrentes pages utiliss dans notre site.
2010/2011
ASP.NET
126
TP 9 : Plan de site
Construire une cartographie du site dcrivant ladresse de toutes les pages du
site ainsi que le titre de menu associ et de le stocker au format Xml dans un fichier de type Plan de site.
Un plan de site est un fichier XML qui dcrit la collection de nuds du menu de
votre application. Il doit y avoir un nud principal incluant des sous nuds pour les sous menus.
2010/2011
ASP.NET
127
TP 9 : Plan de site
Faites un clic droit sur la racine de votre projet > Ajouter un nouvel lment > Plan de site
2010/2011
ASP.NET
128
TP 9 : Source de donnes
Double cliquez sur MasterPage.master lExplorateur de solutions. Faites un glisser dplacer de la Bote outils > rubrique Donnes > contrle SiteMapDataSource sur la page.
2010/2011
ASP.NET
129
Le menu racine Accueil napparat pas car vous avez indiqu au contrle source de donnes
2010/2011
ASP.NET
130
1. Le contrle TreeView: Cest le contrle qui va nous permettre dafficher le menu sur la barre de
2010/2011
ASP.NET
131
TP 9 : Le contrle TreeView
Double clique sur la page MasterPage.master depuis lExplorateur de solutions. Ajoutez un contrle TreeView la suite du contrle de source de donnes SiteMapDataSource Faites un glisser dplacer de la Bote outils > rubrique Navigation > contrle TreeView sur la page Choisissez la source de donnes siteMapDataSource1.
2010/2011
ASP.NET
132
TP 9 : Le contrle TreeView
Proprits: Les attributs ExpandImageUrl et CollapseImageUrl du contrle TreeView
pour afficher des images de votre choix lorsquun menu contient des sous
menus. Lattribut NoExpandImageUrl donne limage affiche pour toutes les options de menus nayant pas de sous niveau.
Lattribut ExpandDepth permet de contrler la profondeur de laffichage des nuds dans la hirarchie au lancement du menu. Avec la valeur 0, on obtient seulement les menus. Avec une valeur 1, mme les sous-menu sont dj ouvertes .
2010/2011
ASP.NET
133
TP 9 : Le contrle Menu
Cest le contrle qui va nous permettre dafficher le mme menu dans le pied de notre page. Double clique sur la page MasterPage.master depuis lExplorateur de solutions. Ajoutez un contrle Menu juste au dessus du contrle literal ltlPiedDePage dans la partie Zone : Pied de page : Faites un glisser dplacer de la Bote outils => rubrique Navigation => contrle Menu sur la page.
2010/2011
ASP.NET
134
TP 9 : Le contrle Menu
Choisissez la source de donnes :
2010/2011
ASP.NET
135
2010/2011
ASP.NET
136
TP 9 : Le contrle SiteMapPath
Cest le contrle qui donne le chemin de la page en cours dans la bannire des pages. Par exemple ici vous tes dans la page Acceuil (Default.aspx).
Lorsque vous cliquez sur lun des lments du menu, vous observez le chemin de la page correspondante donn par le contrle.
2010/2011
ASP.NET
137
TP 9 : Le contrle SiteMapPath
Ajoutez un contrle SiteMapPath lintrieur de la balise <div> de classe nav :
Faites un glisser dplacer de la Bote outils > rubrique Navigation => contrle SiteMapPath sur la page.
Notez les lments drivs de la classe Style, PathSeparatorStyle, CurrentNodeStyle, NodeStyle et RootNodeStyle, pour dfinir le style des diffrentes parties du contrle. Slectionnez loption Modifier les modles.
Dans la liste droulante, positionnez vous sur le modle correspondant au dessin du sparateur de menu : PathSeparatorTemplate.
2010/2011
ASP.NET
138
Notez les lments drivs de la classe Style, PathSeparatorStyle, CurrentNodeStyle, NodeStyle et RootNodeStyle, pour dfinir le style des diffrentes parties du contrle.
2010/2011
ASP.NET
139
A suivre