2009-07-21 81 views
0

我有两个Web用户控件嵌套在更新面板中。用户控件中的事件似乎不会触发面板。为了进行测试,我设置了火灾休眠3秒的方法,并向页面添加了更新进度面板。更新进度面板永远不会出现,页面会像往常一样刷新。更新面板和用户控件

用户控制工作正常,并做他们需要做的,但我想让他们ajaxy和漂亮。

是否有一种将usercontrols添加到更新的特殊方法,以便回发能正常工作?

<asp:ScriptManager ID="ScriptManager1" runat="server"> 
     </asp:ScriptManager> 
     <asp:UpdateProgress ID="UpdateProgress1" runat="server" DisplayAfter="100"> 
      <ProgressTemplate> 
       UPDATING...</ProgressTemplate> 
     </asp:UpdateProgress> 

     <asp:UpdatePanel ID="UpdatePanel1" runat="server"> 
      <ContentTemplate> 
       <div id="order"> 
        <keg:BeerList runat="server" ID="uxBeerList" /> 
        <kegcart:ShoppingCart runat="server" ID="uxCustomerCart" /> 
        <br class="clearfloat" /> 
       </div> 
      </ContentTemplate> 
     </asp:UpdatePanel> 

    Protected Sub uxBeerList_AddItem(ByVal item As KegData.IOrderableItem) Handles uxBeerList.AddItem 
      uxCustomerCart.AddItemToOrder(item) 
      System.Threading.Thread.Sleep(5000) 
     End Sub 
+4

您将需要张贴一些示例代码 – 2009-07-21 16:47:09

+0

另请注意您是否拥有Asych。在同一站点的其他区域工作的回传(最好使用相同的web.config) – 2009-07-21 16:55:37

+0

没有其他地方回发,但我可以创建没有usercontrols的同一页面,并且它可以正常工作。 – 2009-07-21 17:32:29

回答

0

你不应该设置任何特定的东西。但是,如果没有代码示例,我们很难进行诊断。

您希望确保的一件事是您没有将ChildrenAsTriggers设置为false。

+0

添加示例代码。我没有设置ChildrenAsTriggers,所以它应该默认为True。 – 2009-07-22 11:38:50

0

我认为你需要把

中的UpdateProgress & ProgressTemplate标签在UpdatePanel和的ContentTemplate标签内。这应该可以工作,除非在其他地方有问题,这很难从所提供的代码中看出来。

相关问题