我想把UpdatePanel外面的按钮注册为异步回发
很多资料都给出方法 
        protected void Page_Load(object sender, EventArgs e)
        {
            ScriptManager1.RegisterAsyncPostBackControl(Button1);
        }
经测试这个方法也没问题,很方便。但是问题在我的ScriptManager1在母版页上,页面上是没有ScriptManager1的,所以无法直接使用
ScriptManager1.RegisterAsyncPostBackControl(Button1);
而ScriptManagerProxy也没有RegisterAsyncPostBackControl方法找了N多资料都没找到办法,大部分的介绍资料都在母版页直接进行注册回发按钮。但是母版页是标准页面,
只有在内容也上才有各种不同的按钮,需要根据业务需要进行注册按钮回发,难不成要把ScriptManager1拿到每个页面上
还是说有其它简单的方法?

解决方案 »

  1.   

    如果将ScriptManager控件添加在母版页上的话,那么各内容页面只需添加UpdatePanel控件就可以了
    按钮分别在各自的UpdatePanel控件内。
    将两个内容页面内的两个UpdatePanel控件的UpdateMode设为Conditional,ChildrenAsTrigger设为True。
      <ContentTemplate>
      <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
                </ContentTemplate>
            </asp:UpdatePanel>
            protected void Button1_Click(object sender, EventArgs e)
            {
           
            }
    在母版页中的按钮引起回发
    母版页的CS代码如下:
            protected void Page_Load(object sender, EventArgs e)
            {
                ScriptManager1.RegisterAsyncPostBackControl(this.Button1);
            }
            protected void Button1_Click(object sender, EventArgs e)
            {
                
            }
      

  2.   

    这个资料我看到很多遍了,不是要这个 我的按钮在内容页中 不在母版页中。
    在母版页里面的注册反而方便了,直接调用ScriptManager1就行了关键内容页里面需要注册控件,而且内容页里面没有ScriptManager1 !
      

  3.   

    找到方法了
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="buttom1" EventName="Click" />
    </Triggers>