Элемент управления "ctl00_TextBox1" типа "TextBox" должен быть помещен внутри тега формы с помощью runat = server

При добавлении формы с запуском на сервере будет две формы с сервером runat и возникнет другая ошибка. Может кто-нибудь дать мне идею. Thankx заранее.

Подробности ошибки следующие.

Элемент управления 'ctl00_TextBox1' типа 'TextBox' должен быть помещен в тег формы с помощью runat = server. Описание: Необработанное исключение возникло во время выполнения текущего веб-запроса. Просмотрите трассировку стека, чтобы получить дополнительную информацию об ошибке и где она возникла в коде.

Сведения об исключении: System.Web.HttpException: элемент управления 'ctl00_TextBox1' типа 'TextBox' должен быть помещен внутри тега формы с помощью runat = server.

Ошибка источника:

Необработанное исключение было создано во время выполнения текущего веб-запроса. Информация о происхождении и местоположении исключения может быть идентифицирована с использованием трассы стека исключений ниже.

Трассировка стека:

[HttpException (0x80004005): Управление 'ctl00_TextBox1' типа 'TextBox' должны быть помещены внутри тега формы с Runat = сервер.] System.Web.UI.Page.VerifyRenderingInServerForm(Control контроль) +2052287 System.Web.UI.WebControls.TextBox.AddAttributesToRender(HtmlTextWriter писатель) +49 System.Web.UI.WebControls.WebControl.RenderBeginTag(HtmlTextWriter писатель) +17 System.Web.UI.WebControls.TextBox.Render(HtmlTextWriter писатель) +17 System.Web.UI.Control.RenderControlInternal(HtmlTextWriter писатель, адаптер адаптера) +25 System.Web.UI.Control.RenderControl(HtmlTextWriter писатель, адаптер адаптера) +121 System.Web.UI.Control.RenderControl(HtmlTextWriter писатель) +22 System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter писатель, дети ICollection) +199 System.Web.UI.Control.RenderChildren(HtmlTextWriter писатель) +20 System.Web.UI.Control.Render(HtmlTextWriter писатель) System.Web.UI.Control.RenderControlInternal(HtmlTextWriter писатель, адаптер адаптера) +25 System.Web.UI.Control.RenderControl(HtmlTextWriter писатель, адаптер адаптера) +121 System.Web.UI.Control.RenderControl(HtmlTextWriter писатель) +22 System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter писатель, дети ICollection) +199 System.Web.UI.Control.RenderChildren(HtmlTextWriter писатель) +20 System.Web.UI.Page.Render(HtmlTextWriter писатель) +26 System.Web.UI.Control.RenderControlInternal(HtmlTextWriter писатель, адаптер адаптера) +25 System.Web.UI.Control.RenderControl(HtmlTextWriter писатель, адаптер адаптера) +121 System.Web.UI.Control.RenderControl(HtmlTextWriter писатель) +22 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2558

Информация о версии: Microsoft.NET Версия Framework: 2.0.50727.1873; Версия ASP.NET: 2.0.50727.1433

7 ответов

Ошибка указывает на проблему

Правильный

<form id="frm" runat="server">
 </form>

Некорректное


Увидев тег "master-pages", включенный в вопрос, эта ошибка может появиться, когда вы пытаетесь динамически добавлять текстовые поля (или, если на то пошло, любой элемент управления) на странице контента, которая использует главную страницу.

Только главная страница содержит форму с установкой runat = "server". На страницах контента есть только владельцы контента.

Чтобы динамически добавлять элементы управления на страницу контента, включите панель в желаемый контент-сайт на своей странице контента, а затем добавьте в нее элементы управления в своем коде. Например,

В вашем файле aspx для страницы содержимого добавьте панель, например

Затем в вашем коде позади,

Dim txtbox As New textbox()
 Panel1.Controls.Add(txtbox)


Ошибка возникает из-за того, что вы разместили свой элемент управления с помощью runat = "server" вне тега формы (с помощью runat = "server" ). ASP.NET требует наличия всех элементов управления сервером в одной форме с атрибутом runat = "server" .


Ошибка - это "txtTo" типа "TextBox", который должен быть помещен внутри тега формы с помощью сервера runat =.

ОШИБКА - это код.

<strong>To </strong>
 
 
 <strong>: </strong>
 
 
  


Со стандартным ASP.Net вы можете иметь только одну форму. Это ограничение ASP.Net. Если вы собираетесь делать вещи, для которых требуется два или более тега

, вам понадобится MVC или что-то в этом роде.


Вы не сказали, где этот элемент управления находится в вашей форме.

Если эта ошибка является результатом того, что другой элемент управления находится внутри элемента управления GridView, как и у меня, это также может помочь вам:

Элемент управления xxx типа 'LinkButton' должен быть помещен внутри тега формы с помощью runat = server


Я тоже столкнулся с этим. То, что я сделал, было просто добавлено PageWrapper, и весь код сайта вошел в него. Например:

<div id="PageWrapper">
 <form id="form1" runat="server">
 <div id="Header">...</div>
 <div id="MainContent">...</div>
 ...
 </form>
 </div>

Что-то вроде этого. Надеюсь, это поможет.

licensed under cc by-sa 3.0 with attribution.