【发布时间】:2011-04-04 18:32:00
【问题描述】:
我有一个带有侧边栏的母版页,其中包含用于站点导航的手风琴控件。在我的一个子窗体上,我在 UpdatePanel 中添加了一个 GridView。该用户通过单击按钮启动作业。此作业写入数据库表,我希望通过 Grid 视图查看此更新。我添加了一个带有执行 GridView.DataBind 的 ontick 事件的计时器控件。
GridView 数据在每个刻度(2 秒)上刷新,问题是整个页面(包括母版页)收到回发 - 导致我的手风琴控件的选定面板被重置。
我以前没有使用过 UpdatePanel 控件,但我希望这可以防止整页回发。我想我配置的东西不正确。我在下面粘贴了包含 Panel 和 GridView 的 div。谁能告诉我我做错了什么?
谢谢
罗伯。
<div id="statusGrid">
<u>Job Status</u>
<br />
<asp:UpdatePanel ID="StatusUpdatePanel" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="grdJobStatus" runat="server" DataSourceId="sqlJobStatus">
<FooterStyle BackColor="#B5C7DE" ForeColor="#4A3C8C" />
<HeaderStyle BackColor="#4A3C8C" Font-Bold="True" ForeColor="#F7F7F7" />
<PagerStyle BackColor="#E7E7FF" ForeColor="#4A3C8C" HorizontalAlign="Right" />
<RowStyle BackColor="#E7E7FF" ForeColor="#4A3C8C" />
<SelectedRowStyle BackColor="#738A9C" Font-Bold="True" ForeColor="#F7F7F7" />
</asp:GridView>
<asp:SqlDataSource ID="sqlJobStatus" runat="server" ConnectionString="<%$ ConnectionStrings:ARC_CTRLConnectionString %>">
</asp:SqlDataSource>
</ContentTemplate>
</asp:UpdatePanel>
<asp:Label ID="lblBODIJobMsg" runat="server"></asp:Label>
</div>
【问题讨论】:
-
没有直接回答你的问题,但是这个页面可以帮助澄清一些 UpdatePanel 的误解:msdn.microsoft.com/en-us/magazine/cc163413.aspx
标签: ajax gridview updatepanel