将ModalPopupExtender放在一个恒定的位置

时间:2009-05-20 08:21:42

标签: c# asp.net web-applications ajaxcontroltoolkit modalpopupextender

我有一系列ModalPopupExtenders,我用它来在ASP.NET 2.0页面上实现弹出对话框。

当它们弹出时,使用构造函数使用X和Y坐标来指定它们出现的位置相当容易,但我不确定如何处理窗口大小的变化,这会改变它们应该在笛卡尔空间中的位置。我需要它们相对于页面上的其他元素显示。

我已尝试在IE中加入onresize javascript函数,但是只要div改变大小就会崩溃并触发(有问题的是我在UI中有很多CollapsiblePanelExtenders。

有人做过这个并且有任何建议我如何才能使这个工作?

编辑:此代码有助于捕获调整大小事件... http://blog.stchur.com/2006/09/06/the-ie-resize-bug-revisited/

2 个答案:

答案 0 :(得分:1)

我已经想出如何做到这一点。

我使用onClickClick来显示模态弹出窗口,然后通过从DOM获取来自已知控件的x + y坐标来确定放置它们的位置。调整大小后(来自http://blog.stchur.com/2006/09/06/the-ie-resize-bug-revisited/)我决定隐藏弹出窗口

答案 1 :(得分:0)

ModalPopupExtender有一个名为RepositionMode的属性,正是出于此目的