Introduction aux formulaires Web
Nikhil Kothari
Microsoft Corporation
Septembre 2000
Résumé : cet article présente les formulaires Web, structure ASP.NET qui permet aux développeurs de créer des pages
Web programmables dans le cadre d'une application Web globale.
Sommaire
Présentation
Contrôles HTML
Contrôles Web
Contrôles HTML et contrôles Web
Les formulaires Web et l'expérience de développement d'application rapide
Documents de référence
Présentation
La structure Active Server Pages.NET (ASP.NET ou ASP.NET), également connue sous le nom de formulaires Web, permet
la création de pages Web programmables dans le cadre d'une application Web globale. Les formulaires Web simplifient le
développement des applications Web de la façon suivante :
Ils offrent un modèle de programmation par événement sur le serveur, semblable au modèle de développement
reposant sur les formulaires que l'on trouve dans les outils de développement basés sur Microsoft® Win32®
tels que le système de développement Microsoft Visual Basic®.
Ils permettent une séparation complète des balises HTML et de la logique d'application. La logique, ou le code qui
se trouve derrière la page, est compilée et offre de bien meilleures performances. De plus, ce code peut être
écrit dans n'importe quel langage Microsoft® .NET, et vous permet de tirer un meilleur parti de vos
compétences existantes.
Ils offrent une riche expérience de conception. Visual Studio® .NET offre une expérience de développement
d'application rapide pour créer et gérer des formulaires Web.
Ils intègrent un ensemble riche et très fonctionnel de contrôles et de composants .NET qui offrent un modèle
objet cohérent indépendant du type. De plus, la structure se prête naturellement aux extensions par
l'intermédiaire de composants personnalisés et de tierces parties.
Cet article s'intéresse en premier lieu aux contrôles du serveur que nous avons intégrés à la structure. D'autres aspects
également importants d'ASP.NET, tels que la mise en mémoire cache, la sécurité, la configuration, et la personnalisation,
sont abordés en détail dans la section guide du développeur de la documentation du kit de développement .NET.
Les contrôles du serveur servent à créer l'interface utilisateur de votre application Web. Ils peuvent générer toutes les
sorties adaptées à l'unité ou au navigateur visé. La structure ASP.NET contient deux ensembles de contrôles du serveur :
les contrôles HTML et les contrôles Web, les deux produisant du HTML utilisé par les navigateurs Web. Outre ce rendu
HTML, ces contrôles encapsulent également le mécanisme pour préserver l'état pendant les allers-retours et les
événements survenant côté serveur pour différents événements du client. Ces contrôles peuvent également servir de
briques élémentaires dans des contrôles composites.
Ces deux types de contrôles sont décrits dans le détail dans les sections qui suivent.
Contrôles HTML
Le premier type de contrôles de la structure ASP.NET est constitué des contrôles HTML. Ces contrôles existent dans
l'espace de nom System.Web.UI.HtmlControls, et sont dérivés (directement ou non) de la classe de base HtmlControl.
La figure 1 illustre la hiérarchie de classe des contrôles HTML.
Figure 1. Contrôles HTML ASP.NET
Les contrôles HTML sont instanciés à partir de n'importe quelle balise contenant l'attribut runat="server". Par exemple,
le code HTML qui suit crée une instance de HtmlInputText nommée "textBox1" :
<input type="text" runat="server" id="textBox1" value="some text">
Le tableau qui suit donne la liste des contrôles HTML et des balises HTML qui leur correspondent.
Tableau 1. Balises des contrôles HTML
Contrôle
Balise correspondante
HtmlAnchor
<a>
HtmlButton
<button>
HtmlSelect
<select>
HtmlTextArea
<textarea>
HtmlInputButton
<input type="button">
HtmlInputCheckBox
<input type="check">
HtmlInputRadioButton
<input type="radio">
HtmlInputText
<input type="text"> et <input type="password">
HtmlInputHidden
<input type="hidden">
HtmlInputImage
<input type="image">
HtmlInputFile
<input type="file">
HtmlForm
<form>
HtmlImage
<img>
HtmlTable
<table>
HtmlTableRow
<tr>
HtmlTableCell
<td>
HtmlGenericControl
Toute autre balise sans correspondance, telle que <span>, <div>, etc.
Du fait que les contrôles HTML ont une correspondance directe avec les balises HTML, ils sont utiles pour faire migrer des
pages ASP existantes vers ASP.NET. Ces contrôles sont comparés à leurs homologues, les contrôles Web, plus loin dans cet
article.
Contrôles Web
Le second type de contrôles de la structure ASP.NET est constitué des contrôles Web. Ces contrôles existent dans l'espace
de nom System.Web.UI.WebControls, et sont dérivés (directement ou non) de la classe de base WebControl. La figure
2 illustre la hiérarchie de classe des contrôles Web.
Figure 2. Contrôles Web ASP.NET
Les contrôles Web incluent les formes traditionnelles de contrôles telles que les TextBox et Button, ainsi que d'autres
concepts de niveau supérieur tels que Calendar et DataGrid. Ils offrent plusieurs fonctions qui simplifient vos efforts de
développement, en particulier :
Un modèle objet riche et cohérent. La classe de base WebControl implémente un certain nombre de
propriétés communes à tous les contrôles. Il s'agit notamment de ForeColor, BackColor, Font, Enabled, etc.
Les noms de propriété et de méthode ont été choisis pour favoriser la cohérence dans l'ensemble de la
structure et des contrôles. Le modèle objet fortement typé implémenté par ces composants permet de réduire
les erreurs de programmation.
Détection automatique du navigateur. Les contrôles Web détectent automatiquement les capacités du
navigateur client et peuvent personnaliser le rendu pour utiliser au mieux ces capacités.
Liaison de données. Dans les pages de formulaires Web, toute propriété d'un contrôle peut être reliée aux
données. De plus, plusieurs contrôles Web peuvent servir à rendre le contenu d'une source de données.
Les contrôles Web apparaissent dans le balisage HTML comme des balises d'espace de nom, c'est-à-dire des balises avec
un préfixe. Le préfixe sert à faire correspondre la balise à l'espace de nom du composant exécutable. Le reste de la balise
est le nom de la classe d'exécutable elle-même. Tout comme les contrôles HTML, ces balises doivent également contenir
un attribut runat="server". Un exemple de déclaration se trouve ci-après :
<asp:TextBox id="textBox1" runat="server" Text="[Entry
Keywords]"></asp:TextBox>
Dans l'exemple qui précède, "asp" est le préfixe de la balise et correspond à l'espace de nom
System.Web.UI.WebControls.
La suite cette section décrit les contrôles Web qui ont été implémentés pour les versions PDC et bêta 1. Chaque contrôle
contient une brève description, un exemple de déclaration et une capture d'écran affichant un exemple de rendu dans le
navigateur. Les contrôles ont été regroupés par catégories fonctionnelles.
Affichage de texte
Le contrôle Label sert à afficher du texte statique en lecture seule ou lié aux données dans la page :
<asp:Label runat="server" Text="Label1" Font-
Italic="true"></asp:Label>
Contrôles d'entrée
La suite des contrôles Web contient les contrôles qui permettent à l'utilisateur final d'entrer les valeurs traitées par la page
sur le serveur.
Le contrôle TextBox permet de modifier le texte. De même qu'avec le contrôle Label, le texte peut être lié aux données.
Le contrôle TextBox prend en charge plusieurs modes qui permettent de l'utiliser pour l'entrée sur une ligne unique, sur
plusieurs lignes, ou de mot de passe :
<asp:TextBox runat="server" Text="TextBox1"></asp:TextBox>
<asp:TextBox runat="server" Mode="Multiline" Rows="3">
TextBox1
</asp:TextBox>
<asp:TextBox runat="server" Mode="Password"></asp:TextBox>
Le contrôle CheckBox permet de créer une case à cocher que l'on peut activer ou désactiver :
<asp:CheckBox runat="server" Text="CheckBox1"
Checked="True"></asp:CheckBox>
Le contrôle RadioButton est semblable au contrôle CheckBox, mais s'utilise généralement avec d'autres contrôles
RadioButton dans un groupe, pour offrir un ensemble de choix mutuellement exclusifs :
<asp:RadioButton runat="server" Text="RadioButton1" GroupName="Group1"
Checked="true">
1 / 14 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !