【发布时间】:2010-01-11 19:43:40
【问题描述】:
我正在使用 CSLA 框架和 AJAX ModalPopupExtender 控件的 ASP.NET 项目。我之前在不同的项目中使用过 CSLA 和 ModalPopupExtender,但这是我第一次将它们一起使用。
我希望它工作的方式是让用户按下一个按钮,这将创建一个对象的实例并显示模式弹出窗口。基于刚刚创建的对象,弹出窗口具有绑定到 CslaDataSource 的控件。
实际上它的工作方式是在 ModalPopup 上加载控件,即使弹出窗口仍然隐藏,例如在初始页面加载期间。这会产生错误,因为控件所绑定的对象尚不存在,因此无法在 aspx 页面上正确呈现控件和相应的 Javascript。错误是: “Microsoft JScript 运行时错误:Sys.ArgumentNullException:值不能为空。 参数名称:元素”
我目前的解决方法是预先创建一个虚拟对象,以便弹出窗口上的控件最初可以绑定到某些东西。然后,当用户按下按钮时,我会替换该对象。我想知道是否有一种更简单的方法可以减少我可能会丢失的开销。
【问题讨论】:
标签: asp.net modalpopupextender csla