我在主页面中有一个用户控件,用于计算购物篮中的产品数量并写入购物车(2)等页面,显示您有2个产品。 将产品添加到购物篮时,首先加载用户控件,然后由于页面生命周期而加载页面的添加方法。
所以为了看到新添加的产品生效 - 购物车(3) - 我需要刷新页面..
按下“添加到购物车”按钮后,为了看到这一点,最佳解决方案是什么,没有刷新网站。
我是否需要使用母版页的pre_render事件?
答案 0 :(得分:1)
查看ASP.Net page life cycle,您会发现在回发处理程序之后调用LoadComplete(仅用于页面)和PreRender事件。
将购物车计算移动到用户控件的PreRender事件中应该足够了。
答案 1 :(得分:0)
只需处理事件执行的实际顺序,并相应地调用您的逻辑:
http://msdn.microsoft.com/en-us/library/ms178472.aspx
通常,无论何时添加项目,母版UC都应订阅页面触发的事件。
答案 2 :(得分:0)
最好的方法是在用户控制中使用自定义事件。
如果你不想使用它,你可以使用一种解决方法。只需创建一个用户控件属性即可显示计数并在该页面的Add方法中更新其值。