我开发了一个显示产品列表的用户控件,效果很好。然后我将这个用户控件放到另一个用户控件中,允许用户选择不同的标准和产品UC更新以显示这些产品,所有这些都很漂亮,并且通过UpdatePanel使用AJAX。一个用户控件在AJAX回发期间更新另一个控件?
所有工作都很好...然后又有另一个要求。“搜索”控件需要与产品控件分开(因此它们可以单独定位)。起初,我认为这没有问题,因为我会让搜索控件引用产品控件,然后它会通过引用与它通信,而不是直接在控件内部(已被删除)。
他们说话。但产品控制加载,但拒绝显示。
我检查,它是通过引用而不是副本(我可以告诉)传递。
在搜索控件中有一个updatepanel。产品控制中有一个更新面板。然后为了更好的衡量,在实际的搜索aspx页面中有一个更新面板。
我已经尝试将产品控制更新面板设置为条件,然后手动激发.Update()方法。
这里的秘密是什么?
TIA!
解决
由于杰米井的小费使用的事件。
搜索控件和产品控件仍然有内部更新面板,并且在此特定页面上没有更长的页面。
Search Control现在引发一个事件OnSearchResultsUpdated并显示属性中找到的项目。页面订阅此事件并获取属性并将它们传递给产品控件,触发器会在产品控件上触发一个.Refresh()方法,该方法只需在其内部更新面板上调用.Update()。
产品控制FYI接受几种不同口味的产品。一系列不同的SKU,产品ID列表,数据库中的命名集合以及最终给定的产品类别。
我们的设计师需要能够创建一个新页面,将控件放到它上面,并设置一些属性,并瞧!新网站页面。他们不想要程序员的参与。所以保持控制自包含是一个要求。幸运的是,我所做的所有更改仍完全适用于产品控制的其他用途。
再次感谢!
也许有一点代码会让球滚动。特别是搜索控制如何获得其对产品控制的参考,并且产品代码是否依赖于搜索控制中的任何内容? – 2009-04-16 21:07:15