Les Labs Microsoft
Section C# / Asp.Net du site http://phenix.developez.com
par Patrick VALERI
Plan du site - Autres sections
Labs ASP.NET v1.1 Aurélien Norie & Sébastien Bovo [Microsoft]
J'ai repris les codes d'origine VB.NET en C# et apporter quelques commentaires.
Lab05
But du Lab
Le but de ce Lab est de créer et utiliser un contrôle Web Utilisateur.
Exercice 1 – Création du contrôle Web Utilisateur
- Créer une nouvelle application Web ASP.NET en Visual Basic : « 05VBCtlWebUtilisateur »
- Ajouter un nouveau contrôle Web Utilisateur au projet : « MenuCtrl.ascx »
- Sur ce contrôle faire glisser le contrôle « Table »
- Dans le code behind, implémenter les deux méthodes suivantes pour le contrôle Web Utilisateur :
Private Sub AddMenuItem( ByVal linkName As String, ByVal linkURL As String)
Dim menuRow As TableRow = New TableRow
Table1.Rows.Add(menuRow)
Dim menuCell As TableCell = New TableCell
BuildLink(menuCell, linkName, linkURL)
menuRow.Cells.Add(menuCell)
End Sub
Private Sub BuildLink( ByVal menuCell As TableCell, ByVal linkCaption As String, ByVal linkHRef As String)
Dim menuLink As HyperLink = New HyperLink
menuLink.Text = linkCaption
menuLink.NavigateUrl = linkHRef
menuCell.Controls.Add(menuLink)
End Sub
- Dans l’évènement Page_Load, remplir dynamiquement le contrôle :
Private Sub Page_Load( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
AddMenuItem("MSN", "http://www.msn.fr")
AddMenuItem("Microsoft", "http://www.microsoft.com")
AddMenuItem("MSDN", "http://msdn.microsoft.com/")
End Sub
- Implémenter une propriété pour changer la couleur du contrôle Web utilisateur :
Public Property As color
Get
BackGroundColor = Table1.BackColor
End Get
Set( ByVal Value As color)
Table1.BackColor = Value
End Set
End Property
Peu de changements en c# par exemple la propriété :
public Color BackgroundColor
{
get
{
Color returnValue = Table1.BackColor;
return returnValue;
}
set
{
Table1.BackColor=value;
}
}
- Enregistrer et compiler
Exercice 2 – Utilisation du contrôle Web Utilisateur
- Ouvrir la page « WebForm1.aspx »
- Faire glisser le contrôle Web Utilisateur créé depuis l’explorateur de solutions vers la page
- Glisser aussi un bouton
- Double-cliquer sur le bouton
- Dans le code behind ajouter sous « Code généré par le Concepteur Web Form » :
Protected WithEvents MenuCtrl1 As MenuCtrl
- Dans l’évènement associé au clique sur le bouton, modifier la couleur du contrôle Web Utilisateur :
Private Sub Button1_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
MenuCtrl1.BackGroundColor = System.Drawing.Color.Beige
End Sub
- Compiler et naviguer sur la page WebForm1.aspx
Peu de commentaires sur ce Lab si ce n’est la position de MenuCtrl1 qu’il vaudrait mieux définir.