控制动态AJAX用户控件的加载顺序

时间:2011-03-18 15:14:46

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

我已经构建了一个显示“小部件”(服务器端用户控件)的“门户”。该页面包含两列,每列包含一个更新面板。每个小部件都包含一个updatepanel和multiview,默认视图显示“loading”消息,第二个视图包含实际内容。

当用户登录时,我查询数据库以获取用户有权访问的小部件列表及其列和订单号。在页面初始化期间,我按照指示的顺序将所有小部件添加到页面的列中。加载页面后,每个窗口小部件上的计时器都会被触发,窗口小部件的多视图从“加载”视图切换到内容视图,并将内容的可见性设置为true。这会强制加载内容。

以这种方式设置加载会使页面加载显得更快,因为它在初始页面加载之前不会处理任何窗口小部件数据。这一切都很好,但我有一个问题,小部件加载的顺序。

目前,页面加载并且小部件将从左列顶部开始加载到底部,然后它将开始加载右列的顶部。页面可能有很多小部件,所以当我等待完整的左列加载时,我最终会盯着右侧的一堆加载消息。 我真的希望能够在两列中自上而下,而不是整列左列,然后是右列。例如,在左列中加载第一个小部件,然后在第一个小部件中加载第一个小部件。对,等等。通过这种方式,用户可以查看顶部,而不是盯着一堆加载消息,并且在加载时必须向下滚动页面。

1 个答案:

答案 0 :(得分:0)

听起来像你需要更改page_init中的加载顺序,这样做:

  • col 1,widget 1
  • col 2 widget 1
  • col 1,widget 2
  • col 2,widget 2