Contrôle serveur - ASP.NET

Les contrôles serveur sont des balises compréhensibles par le serveur.

Limites de Classic ASP

Le code ci-dessous est copié à partir de la section précédente :

id="
<body style="background-color:#e5eecc; text-align:center;">
<h2>Hello CodeW3C.com!</h2>
<p><%Response.Write(now())%></p>
</body>
</html>

Le code ci-dessus reflète les limites de Classic ASP : les blocs de code doivent être placés à l'endroit où une sortie est nécessaire.

Avec Classic ASP, nous ne pouvons pas séparer le code exécutable de l'HTML lui-même. Cela rend les pages difficiles à lire et à maintenir.

Contrôle serveur - ASP.NET

Grâce aux contrôles serveur, ASP.NET a résolu le problème de "code en spaghetti" décrit précédemment.

Les contrôles serveur sont des balises compréhensibles par le serveur.

Il existe trois types de contrôles serveur :

  • Contrôle serveur HTML - Balises HTML traditionnelles
  • Contrôle serveur Web - Nouvelles balises ASP.NET
  • Contrôle serveur de validation - Pour la validation des entrées

Contrôle serveur HTML - ASP.NET

Les contrôles serveur HTML sont des balises HTML compréhensibles par le serveur.

Les éléments HTML dans ASP.NET sont traités comme du texte. Pour rendre ces éléments programmables, il est nécessaire d'ajouter Attribut runat="server"Cette propriété indique que cet élément est un contrôle serveur. Il est également nécessaire d'ajouter l'attribut id pour identifier ce contrôle serveur. Cet id peut être utilisé pour manipuler le contrôle serveur en temps réel.

Remarque :Tous les contrôles serveur HTML doivent être situés à l'intérieur de l'étiquette <form> avec l'attribut runat="server". L'attribut runat="server" indique que le formulaire doit être traité sur le serveur. Il indique également que les contrôles inclus peuvent être accédés par les scripts serveur.

Dans l'exemple suivant, nous avons déclaré un contrôle serveur HtmlAnchor dans le fichier .aspx. Ensuite, nous avons manipulé l'attribut HRef du contrôle HtmlAnchor dans un gestionnaire d'événement. L'événement Page_Load est l'un des nombreux événements compris par ASP.NET :

Remarque :Un gestionnaire d'événement (event handler) est une sous-programme qui exécute du code pour un événement donné.

<script runat="server">
Sub Page_Load
link1.HRef="http://www.codew3c.com"
End Sub
</script>
id="
some_id
<form runat="server">
<a id="link1" runat="server">Visitez CodeW3C.com!</a>
</form>
</body>
</html>

Avis :Le code executable lui-même a été déplacé en dehors de l'HTML.

ASP.NET - Contrôle serveur Web

Les contrôles serveur Web sont des balises ASP.NET spéciales comprises par le serveur.

Comme les contrôles serveur HTML, les contrôles serveur Web sont créés sur le serveur, ils nécessitent également l'attribut runat="server" pour être actifs. Cependant, les contrôles serveur Web n'ont pas besoin de mapper aucun élément HTML existant, ils représentent des éléments plus complexes.

La syntaxe de création d'un contrôle serveur Web est :

每种 validation 控件执行一种特定的验证类型(比如验证某个具体的值或者某个范围的值)。 默认地,当点击Button, ImageButton或LinkButton 时,就会执行页面验证。您可通过把 CausesValidation 属性设置为 false,来阻止某个按钮控件被点击时进行验证。创建 Validation 服务器控件的语法是:<asp:

Dans l'exemple suivant, nous avons déclaré un contrôle serveur Button dans le fichier .aspx. Ensuite, nous avons créé un gestionnaire d'événement pour l'événement Click, qui peut modifier le texte sur le bouton :

<script runat="server">
Sub submit(Source As Object, e As EventArgs)
button1.Text="Vous avez cliqué sur moi!"
End Sub
</script>
id="
some_id
<form runat="server">
<asp:Button id="button1" Text="Cliquez-moi!" runat="server" OnClick="submit"/>
</form>
</body>
</html>

ASP.NET - Contrôle serveur de validation

Le contrôle serveur de validation est utilisé pour valider l'entrée de l'utilisateur. Si l'entrée de l'utilisateur ne passe pas la validation, un message d'erreur sera affiché à l'utilisateur.

每种 validation 控件执行一种特定的验证类型(比如验证某个具体的值或者某个范围的值)。

默认地,当点击Button, ImageButton或LinkButton 时,就会执行页面验证。您可通过把 CausesValidation 属性设置为 false,来阻止某个按钮控件被点击时进行验证。

创建 Validation 服务器控件的语法是:

每种 validation 控件执行一种特定的验证类型(比如验证某个具体的值或者某个范围的值)。 默认地,当点击Button, ImageButton或LinkButton 时,就会执行页面验证。您可通过把 CausesValidation 属性设置为 false,来阻止某个按钮控件被点击时进行验证。创建 Validation 服务器控件的语法是:<asp:

control_name

id="
some_id
" runat="server" />
在下面的例子中,我们在 .aspx 文件中声明了一个 TextBox 控件,一个 Button 控件,以及一个 RangeValidator 控件。如果验证失败,文本 "The value must be from 1 to 100!" 将显示在 RangeValidator 控件中:
<asp:TextBox id="tbox1" runat="server" />
<br /><br />
<asp:Button Text="Submit" runat="server" />
</p>
<p>
<asp:RangeValidator
ControlToValidate="tbox1"
MinimumValue="1"
MaximumValue="100"
Type="Integer"
Text="The value must be from 1 to 100!"
runat="server" />
</p>
</form>
</body>
</html>

显示这个例子