Syntaxe déclarative du contrôle serveur HtmlForm
Mise à jour : novembre 2007
Crée un contrôle côté serveur mappé à l'élément HTML <form> et permet de créer un conteneur d'éléments sur une page Web.
<form
DefaultButton="string"
DefaultFocus="string"
EnableViewState="False|True"
Id="string"
SubmitDisabledControls="False|True"
Visible="True|False"
OnDataBinding="OnDataBinding event handler"
OnDisposed="OnDisposed event handler"
OnInit="OnInit event handler"
OnLoad="OnLoad event handler"
OnPreRender="OnPreRender event handler"
OnUnload="OnUnload event handler"
runat="server"
>
<!--Other controls, input forms, and so on.-->
</form>
Notes
Utilisez le contrôle HtmlForm pour programmer en vous servant de l'élément <form> HTML. Pour tirer parti des services de publication, tous les contrôles Web Forms,qu'il s'agisse de contrôles HTML, de contrôles Web, de contrôles utilisateur ou de contrôles personnalisés, doivent être imbriqués entre des balises d'ouverture et de fermeture correctes du contrôle HtmlForm. Si les balises ne sont pas correctement fermées, ASP.NET ne les reconnaîtra pas. L'élément sera ignoré ou provoquera une erreur de compilation, selon la façon dont il a été formé.
Remarque : |
---|
Vous ne pouvez pas inclure plusieurs contrôles HtmlForm dans une même page Web Forms. |
Par défaut, l'attribut method du contrôle HtmlForm a la valeur POST. Vous pouvez personnaliser l'attribut method selon vos besoins mais si l'attribut method est affecté d'une valeur autre que GET ou POST, il est possible que les services d'état d'affichage et de publication intégrés, fournis par ASP.NET, s'arrêtent.
Remarque : |
---|
L'attribut action a toujours pour valeur l'URL de la page elle-même. L'attribut action ne peut pas être modifié ; par conséquent, vous ne pouvez publier que sur la page elle-même. |
Exemple
L'exemple suivant affiche trois contrôles HtmlButton avec un gestionnaire OnServerClick distinct pour chaque bouton. Chacun de ces événements entraîne une publication sur le serveur (la présence du contrôle HtmlForm est requis dans tous les scénarios de publication). Cet exemple montre également qu'un seul contrôle HtmlForm par page Web Forms est autorisé, y compris un formulaire prenant en charge plusieurs événements. Si vous incluez plusieurs contrôles HtmlForm, le .NET Framework lève une exception.
<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HtmlForm Control</title>
<script runat="server">
Sub Button1_OnClick(Source As Object, e As EventArgs)
Span1.InnerHtml = "You clicked Button1"
End Sub
Sub Button2_OnClick(Source As Object, e As EventArgs)
Span2.InnerHtml = "You clicked Button2"
End Sub
Sub Button3_OnClick(Source As Object, e As EventArgs)
Span3.InnerHtml = "You clicked Button3"
End Sub
</script>
</head>
<body>
<h3>HtmlForm Sample</h3>
<form id="ServerForm" runat="server">
<button id="Button1" runat="server"
onserverclick="Button1_OnClick">
Button1
</button>
<span id="Span1" runat="server" />
<p />
<button id="Button2" runat="server"
onserverclick="Button2_OnClick">
Button2
</button>
<span id="Span2" runat="server" />
<p />
<button id="Button3" runat="server"
onserverclick="Button3_OnClick">
Button3
</button>
<span id="Span3" runat="server" />
</form>
</body>
</html>
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HtmlForm Control</title>
<script runat="server">
void Button1_OnClick(object Source, EventArgs e)
{
Span1.InnerHtml="You clicked Button1";
}
void Button2_OnClick(object Source, EventArgs e)
{
Span2.InnerHtml="You clicked Button2";
}
void Button3_OnClick(object Source, EventArgs e)
{
Span3.InnerHtml="You clicked Button3";
}
</script>
</head>
<body>
<h3>HtmlForm Sample</h3>
<form id="ServerForm" runat="server">
<button id="Button1" runat="server"
onserverclick="Button1_OnClick">
Button1
</button>
<span id="Span1" runat="server" />
<p />
<button id="Button2" runat="server"
onserverclick="Button2_OnClick">
Button2
</button>
<span id="Span2" runat="server" />
<p />
<button id="Button3" runat="server"
onserverclick="Button3_OnClick">
Button3
</button>
<span id="Span3" runat="server" />
</form>
</body>
</html>