现在的位置: 首页 > 综合 > 正文

必须放在具有 runat=server 的窗体标记内

2013年11月17日 ⁄ 综合 ⁄ 共 1453字 ⁄ 字号 评论关闭

近来开始学asp.net,主要熟悉一下各种控件的使用。

    做一个简单的论坛,帖子的回复代码如下:

    //RepeaterDemo.aspx

   

Code:
  1. <div class="layout" id="Div8">   
  2.     <table border="1">   
  3.         <tr>   
  4.                <td style="width: 580px">   
  5.                    <asp:Label ID="backLblTitle" runat="server" Text="回复:"></asp:Label>   
  6.                    <asp:Label ID="lblTitleContent" runat="server"></asp:Label>   
  7.                    <asp:Label ID="lblId" runat="server" Text="Label" Visible="False"></asp:Label>   
  8.                </td>   
  9.             </tr>   
  10.             <tr>   
  11.                <td style="width: 580px; height: 138px">   
  12.                    <asp:Label ID="Label3" runat="server" Text="内容:"></asp:Label>   
  13.                    <asp:TextBox ID="txtAnswerContent" runat="server" Height="158px" Width="590px"></asp:TextBox>   
  14.                </td>   
  15.             </tr>   
  16.             <tr>   
  17.                <td align="right">   
  18.                    <asp:Button ID="BtnSend" runat="server" Text="发表" OnClick="BtnSend_Click" />   
  19.                </td>   
  20.             </tr>   
  21.        </table>   
  22. </div>     

   出现了以下异常的错误:类型“TextBox”的控件“txtAnswerContent”必须放在具有 runat=server 的窗体标记内。

   后来百度了一下,找到如下解决方法: 

   在对应的RepeaterDemo.aspx.cs里(即继承System.Web.UI.Page的类里)加入如下代码:

   public override void VerifyRenderingInServerForm(Control control)
    {
        // Confirms that an HtmlForm control is rendered for
    } 

    这样就得以解决。

 

本文来本文是个人原创,如文中有错或你有建议,请留言指出,如要交流请加QQ519870018,如要转载本文,请标明本文出处。

自CSDN博客,转载请标明出处:http://blog.csdn.net/CpuSheep/archive/2010/06/29/5702975.aspx

【上篇】
【下篇】

抱歉!评论已关闭.