0
我有一个中继器,我已经包含在更新面板中,我有按钮和中继器外的下拉列表。我不希望每次点击按钮或在下拉列表中更改某些内容时都加载页面。 我有我的代码如下。我有两个问题,我不能解决:asp.net更新面板不触发
1)即使当我使用更新面板和触发器(btn15MIN_Click),控件进入Page_Load事件,所以我想我有一些东西,我是在写更新面板代码时做错了。
2)更改dropownlist值后,需要很多时间来更新中继器。
<div class="MainGrid">
<asp:Timer ID="RefreshTimer" runat="server" OnTick="RefreshTimer_Tick" Enabled="True">
</asp:Timer>
<div>
<table width="100%" cellpadding="5">
<tr>
<td>
<div>
<asp:Label ID="lblEndDate" runat="server" Text="LastUpdatedDate:" Font-Bold="true"
CssClass="label" ForeColor="Black"></asp:Label>
<asp:Label ID="lblEndDateText" runat="server" CssClass="label" ForeColor="Black"></asp:Label>
</div>
<div>
<asp:Label ID="lblRefresh" runat="server" Text="Refresh Interval:" CssClass="label"
ForeColor="Black"></asp:Label>   
<asp:LinkButton ID="btn15MIN" runat="server" OnClick="btn15MIN_Click" Text="15MIN">
</asp:LinkButton> 
<asp:LinkButton ID="btn10MIN" runat="server" OnClick="btn10MIN_Click" Text="10MIN">
</asp:LinkButton> 
<asp:LinkButton ID="btn5MIN" runat="server" OnClick="btn5MIN_Click" Text="5MIN">
</asp:LinkButton> 
<asp:LinkButton ID="btn60SEC" runat="server" OnClick="btn60SEC_Click" Text="60SEC">
</asp:LinkButton> 
<asp:LinkButton ID="btn30SEC" runat="server" OnClick="btn30SEC_Click" Text="30SEC">
</asp:LinkButton> 
<asp:LinkButton ID="btnOFF" runat="server" OnClick="btnOFF_Click" Text="btnOFF">
</asp:LinkButton>
</div>
<asp:Panel ID="Panel2" runat="server">
<asp:Label ID="lblResultsDuration" runat="server" CssClass="label" ForeColor="Black">View Results since the last </asp:Label>
<asp:DropDownList ID="ddlDuration" OnSelectedIndexChanged="ddlDuration_SelectedIndexChanged"
runat="server">
<asp:ListItem Text="2" Value="2"></asp:ListItem>
<asp:ListItem Text="4" Value="4"></asp:ListItem>
<asp:ListItem Text="6" Value="6"></asp:ListItem>
<asp:ListItem Text="8" Value="8"></asp:ListItem>
<asp:ListItem Text="24" Value="24"></asp:ListItem>
<asp:ListItem Text="48" Value="48"></asp:ListItem>
</asp:DropDownList>
<asp:Label ID="lblResultsDuration1" runat="server" CssClass="label"> Hours </asp:Label>
</asp:Panel>
<asp:UpdatePanel ID="MainGridUpdatePanel" runat="server">
<Triggers>
<asp:PostBackTrigger ControlID="btn15MIN" />
</Triggers>
<ContentTemplate>
<asp:Panel ID="pnlMonitorSummary" runat="server">
<ul id="monitorGallery" class="gallery ui-helper-reset ui-helper-clearfix" style="margin-top: 5px;">
<asp:Repeater ID="rptMonitorSummary" runat="server" OnItemDataBound="rptMonitorSummary_OnItemDataBound">
<ItemTemplate>
<li class="ui-widget-content ui-corner-tr">
<h5 class="ui-widget-header">
<%# Eval("Name").ToString().Length > 16 ? (Eval("Name") as string).Substring(0, 16) : Eval("Name")%>
</h5>
<div class="center">
<asp:Image Width="100px" ID="btnPerformanceImage" runat="server" Height="75px"></asp:Image>
</div>
</li>
</ItemTemplate>
</asp:Repeater>
</ul>
</asp:Panel>
</ContentTemplate>
</asp:UpdatePanel>
</td>
</tr>
</table>
</div>
</div>
任何一个可以点我对这个
每个SI无论你使用更新面板或其他任何东西,在asp.net中的后面的回复必须触发Page_Load事件,这是asp.net的正常行为 – Adam