C# UpdatePanel PreRender后,转发器内容不可见
我有一个转发器,我正在尝试加载页面加载后,偶然发现了PreRender事件。我已经设置好了所有内容,但是转发器的内容没有显示出来——奇怪的是,当我检查html时,代码就在那里,只是没有显示在浏览器中C# UpdatePanel PreRender后,转发器内容不可见,c#,updatepanel,repeater,updateprogress,prerender,C#,Updatepanel,Repeater,Updateprogress,Prerender,我有一个转发器,我正在尝试加载页面加载后,偶然发现了PreRender事件。我已经设置好了所有内容,但是转发器的内容没有显示出来——奇怪的是,当我检查html时,代码就在那里,只是没有显示在浏览器中 <asp:updatepanel id="panel1" runat="server" updatemode="Conditional" onprerender="upUpdatePanel_PreRender"> <contenttemplate> <asp:
<asp:updatepanel id="panel1" runat="server" updatemode="Conditional" onprerender="upUpdatePanel_PreRender">
<contenttemplate>
<asp:repeater runat="server" id="mainContentRptr" onitemdatabound="bindDepts">
<headertemplate>
<div id="products-tabs-content" class="row tab-content">
</headertemplate>
<itemtemplate>
<div class="tab-pane" id='<%# eval("dept_id") %>
'> <asp:repeater runat="server" id="prodRepeater" onitemcommand="itemToCart">
<headertemplate>
.... </headertemplate>
<itemtemplate>
.... <asp:repeater runat="server" id="condRptr">
<headertemplate>
.... </headertemplate>
<itemtemplate>
.... </itemtemplate>
<footertemplate></footertemplate>
</asp:repeater>
</itemtemplate>
<footertemplate>
</div>
</footertemplate>
</asp:repeater>
</div>
<!-- End .tab-pane -->
</itemtemplate>
<footertemplate>
</footertemplate>
</asp:repeater>
</contenttemplate>
</asp:updatepanel>
这在没有预渲染的情况下可以工作,但是加载速度会根据数据等的不同而有所不同,所以我希望在加载页面后加载它
任何帮助都将不胜感激 一个中继器位于updatepanel之外,它控制着上面所有内容的可见性。它已在prerender事件中填充,但未显示。我把它移到了面板里面,现在一切都正常了没关系-结果很简单,我在updatepanel外面有一个中继器,可以控制上面所有内容的可见性。它已在prerender事件中填充,但未显示。我把它移到了面板里面,现在一切都正常了:)
<asp:UpdateProgress id="updateProgress" runat="server" AssociatedUpdatePanelID="panel1">
<ProgressTemplate>
<div style="position: relative; text-align: center; height: 100%; width: 100%; background-color: white; opacity: 0.7;margin:0 auto">
<asp:Image ID="imgUpdateProgress" runat="server" ImageUrl="images/loader.GIF" AlternateText="Loading ..." ToolTip="Loading ..." style="padding: 10px; position: relative; top: 45%;margin: 0 auto" />
<br/>
<span style="font-size: 16pt;font-weight: bold">Bulding your menu</span>
<br/>
<span>Please wait</span>
</div>
</ProgressTemplate>
</asp:UpdateProgress>
<script language="javascript" type="text/javascript">
function pageLoad(sender, e) {
if (!e.get_isPartialLoad()) {
__doPostBack('<%= panel1.ClientID %>', 'aaaa');
}
}
</script>
protected void upUpdatePanel_PreRender(object sender, EventArgs e)
{
if (Request["__EVENTTARGET"] == panel1.ClientID &&
Request.Form["__EVENTARGUMENT"] == "aaaa")
{
populateRepeaters(); //This has databind for each repeater
}
}