在母版页和内容页中正确使用表单

时间:2009-10-02 13:48:38

标签: c# asp.net webforms master-pages

我目前正在尝试使现有的ASP.NET WebForms应用程序使用Site.Master模板。

创建Site.Master模板并不是一个真正的问题,因为它就像一个魅力。

问题始于从它派生并将控件放在给定的ContentPlaceHolder中。

在运行时,我收到以下错误消息:

Control 'ctr00_Login1' of type 'Login' must be placed inside a form tag with runat=server

这来自我在Site.Master模板中放置的LoginControl。

我应该如何处理此错误以及在母版页中使用元素的最佳做法是什么?

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:3)

您的母版页上看起来没有表单元素(<form>)。请阅读see how masterpages work

您应该拥有以下内容(来自MSDN页面):

<form id="form1" runat="server">
        <table>
            <tr>
                <td><asp:contentplaceholder id="Main" runat="server" /></td>
                <td><asp:contentplaceholder id="Footer" runat="server" /></td>
            </tr>
        </table>
    </form>

或者登录控件不在<form>标记内。