我在另一个页面里想通过某些事件来更新default页面的控件,现在的问题是该怎样得到默认页面的控件?如果是同一页面的话,可以m_page.FindControl("Map1")来得到,可现在是在另一个页面,怎么获取主页面的控件并使其更新呢?
刚接触web开发,不太明白。谢谢各位了!!

解决方案 »

  1.   

    参见http://dotnet.aspx.cc/ShowDetail.aspx?id=49ML4AO8-5PB3-4KNY-NJZD-LJOIOXV4M1X4
      

  2.   

    用js去打开子页面window.open()在子页面用这个方法去获取主页面对控件window.opener.主页面控件名字。
      

  3.   

    milo4210:是这样的,我是的主页面有一个地图的Map控件,在主页面的地图中点击按钮后弹出了一个新的页面,里面是地图的属性表GridView。现在我想在GridView里点击一行,能在default页面中把地图放大定位到GridView那个行的数据那里。
    这个功能如果把GridView也放在default页面的话,我已经实现了。直接在default页面就可以m_page.FindControl("Map1"),找到这个map控件然后缩放定位地图。现在我要把GridView属性表在另一个弹出窗口显示。主要就是不清楚怎么在这个新的aspx页面得到default页面的map控件。
    FisherGao:能讲稍微详细点么?谢谢哦
      

  4.   

    a页面打开b页面
    a页面中存在一个服务器端控件,比如为“Button2”我现在在b页面中执行a页面中的Button2按钮的事件,如下:<head runat="server">
        <title>无标题页</title>
        <script type="text/javascript" >
            function parentclick()
            {
                window.opener.document.getElementById('Button2').click();
            }
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <input id="Button2" type="button" value="changeparent" onclick='parentclick()' /></div>
        </form>
    </body>
    </html>
    这样,在b页就可以执行a页的按钮操作了
      

  5.   

    你是不是想这样啊,在某个页面中的内容改变了之后,这个default中的相关内容也会发生改变了,如果是这样的话,直接刷新default页面是最简单的办法,
    主要是你具体要做什么还不清楚……也可以利用prepage这样的东西设定default页面,这样就可以控制其中的控件了
      

  6.   

    如果你想放大default中的地图,我觉得不应该弹出一个新窗口,而是做一个层弹出,一个假的新窗口,这样你调用原来default页面的地图才能达到放大的效果啊