我可以从UserControl上的UpdatePanel中调用父级的事件方法吗?

时间:2015-10-29 18:59:25

标签: c# asp.net gridview user-controls updatepanel

我有以下需要实施的方案。

我有一个GridView,其中包含一系列记录。当用户选择记录时,浏览器中会出现一个弹出屏幕,显示记录的内容。内容由UserControl呈现,UserControl内有UpdatePanel,用于在操作和保存数据时加载/重新加载数据。

我需要发生的是,在每次保存UserControl后,父页面上的GridView需要刷新,以反映弹出式编辑器中显示的记录的任何更改控制。

我的计划是在我的UserControl上设置一个父页面也会订阅的活动。当从UserControl内执行保存操作时,它将调用该事件,并且父页面应自行更新。

但是,由于UserControlUpdatePanel内运行,并且仅进行部分回发,因此我怀疑我的事件无法正常运行。

这应该是我希望还是我需要找到另一种方法告诉我的父页面在保存记录后刷新主文件GridView

如果我需要以不同的方式调用更新,这种情况的最佳方法是什么?我问,因为我不想构建一些复杂的保存/更新操作,只是为了发现我做了一些错误的假设,需要重新编写整个更新和重新加载过程。

1 个答案:

答案 0 :(得分:0)

之前我已经完成了这件事,因为我不记得我在一段时间内没有使用过Web Forms。你有正确的想法。该事件将在父页面上引发,但之后您必须执行另一个PostBack / Partial PostBack以从父级的事件处理程序更新网格。此外,您还必须确保UpdatePanel上的属性已正确设置。

另一个选择是在关闭PopUp时执行完整回发。如果弹出窗口足够大以至于它阻止用户看到网格,那么当模态关闭而不是保存数据时,网格上的记录是否更新不会有所区别。