我正在玩 EXT.net (ASP.NET),我有以下情况:
ParentPage.aspx - 包含一个打开Ext.net “窗口”的按钮;使用 Javascript 完成的弹出窗口。在那个窗口中,我放置了一个 UserControl (Customer.ascx)。该 UserControl 可以创建客户,并且它使用 Ext.NET DirectMethod 在代码隐藏 Customer.ascx.cs 中创建客户
Customer.ascx - 包含一些 Ext.net 控件和创建 Customer 对象的代码的 UserControl。
现在,当我调用DirectMetod CreateNewCustomer 时,将按预期创建客户,但现在我希望 ParentPage 知道此成功(或失败)操作并采取相应措施。
因此,如果操作失败 - 由于某种原因无法创建客户 - 窗口(弹出窗口)应保持原位并应显示错误。但如果操作成功,则应关闭窗口并更新/刷新列表。
我不能/应该在 UserControl 中放置任何“OnSuccess”代码,因为 UserControl 并不真正知道它是放置在窗口中还是其他地方,并且它不应该由 UserControl 来决定是否应该是显示与否。
所以我需要通知 ParentPage 发生了什么。我的脊椎反应是在 UserControl 中有一个事件,但这当然不起作用,因为它是一个异步操作,我无法将消息推送到 Web 浏览器。
也许可以在 UserControl 调用的 ParentPage 中放置一个 JavaScript 方法,但这有点难看。UserControl 应该能够以“安全方式”通知父页面。它真的不知道 Javascript 方法是否存在,所以它可能正在调用一个不存在的方法?
我可以尝试哪些方法?