做了个测试页HAHA 应用了母板UserDefault.master  (母版里放了2个ContentPlaceHolder )<%@ Page Language="C#" MasterPageFile="~/UserDefault.master" AutoEventWireup="true" CodeFile="HAHA.aspx.cs" Inherits="HAHA" Title="Untitled Page" %> 
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="server" > 
    <form id="form1" runat="server"> 
    <asp:Button ID="Button1" runat="server" Text="Button" /> </form>  
</asp:Content> 
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder2" Runat="Server"> 
      <asp:Button ID="Button2" runat="server" Text="Button" />  
</asp:Content> 诸如Button等需要回传到后台的服务器端控件好象都必须写在 <form id="form1" runat="server"> <\form>内 
否则会报错 :具有类型Button的控件XXX必须放在具有runat=server 的窗体标记内(问:这个窗体标记只能是Form???) 
我现在想在Content1和Content2 里分别放1个服务器端的Button  但是假如我在Content2里也加上form标记 <form id="form2" runat="server"> <\form> 
也会报错  :一个页只能有1个服务器端 Form标记 
如果我试图把2个Content放在同1个form里仍然会报错:内容控件必须是内容页的顶级控件,就是说Form还只能放在Content里面 那请问到底如何能在Content1和Content2里分别放1个服务器端控件Button呢???就干这么一件再简单不过的事了,帮我解决利马结帖给分 

解决方案 »

  1.   

    把 HAHA 改成Runat=Server 
      

  2.   


    母版页:
    .....
    <form id="form1" runat="server">
        <div>
            <asp:contentplaceholder id="ContentPlaceHolder1" runat="server">
            </asp:contentplaceholder>
            <asp:contentplaceholder id="ContentPlaceHolder2" runat="server">
            </asp:contentplaceholder>
        </div>
        </form>
    .....内容页:
    .....
    <asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
        <asp:Button ID="Button1" runat="server" Text="Button" />
    </asp:Content>
    <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder2" Runat="Server">
        <asp:Button ID="Button2" runat="server" Text="Button" />
    </asp:Content>
    .....