Une page peut avoir qu'un seul serveur-côté de la balise Form. erreur dans ASP.NET
Dans le dessous de codage,Ici je vous montre ma page principale & menu de contrôle de l'utilisateur(Menu de contrôle de l'utilisateur ajouté à la page principale).Ici il montre l'erreur,
Générer d'erreur lorsque j'enveloppe mon Usercontrol autour de runat="server"
Une page peut avoir qu'un seul serveur-côté de la balise Form.
Mon Maître Page
<head runat="server">
<asp:ContentPlaceHolder ID="head" runat="server">
</asp:ContentPlaceHolder>
</head>
<body>
<uc1:Menu runat="server" ID="Menu" />
<div>
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
</div>
</body>
Mon UserControl
<form id="text" runat="server">
<asp:LinkButton ID="link_logout" Text="Logout" OnClick="link_logout_Click" runat="server" />
</form>
<%} %>
- C'est parce qu'Une page peut avoir qu'un seul serveur-côté de la balise Form. Vous avez 2 ASP.NET ajoute un lors du rendu de la page maître. Si vous ne pouvez pas avoir de la balise de formulaire dans votre usercontrol autant que je sache
- Apparemment, vous pouvez avoir plusieurs balises de formulaire, mais avec des hacks... stackoverflow.com/questions/7544454/...
- quand j'enlève runat="server" dans le contrôle de l'utilisateur, il affiche cette erreur >> le Contrôle "Menu_link_logout' de type 'LinkButton" doit être placé à l'intérieur d'une balise de formulaire avec runat=server.
- pouvez-vous vérifier votre post, comme il l'a
<%} %>
à la fin - est-ce intentionnel? - c'est serversideone utilise du côté client
- Double Possible de une page peut avoir qu'un seul serveur-côté de la balise form
Vous devez vous connecter pour publier un commentaire.
Vous devez ajouter le
form
à votre masterpage comme ceci:Votre Usercontrol devrait ressembler à ceci (pas besoin de
form
tag):Un seul élément de formulaire dans une page, même si nous utilisons une combinaison de master page et le contenu de la page. Vous pouvez supprimer la balise de la page enfant depuis déjà votre page principale contient la balise form et il va fonctionner .