使用Timer(asp.net)放置在UpdatePanel内时GridView闪烁

时间:2013-07-05 20:51:43

标签: c# asp.net ajax gridview updatepanel

我在UpdatePanel中放置了一个GridView和一个计时器。现在的问题是每次定时器刷新GridView中的图像都会闪烁。谁知道为什么?这是我的代码:

 <asp:UpdatePanel ID="UpdatePanel3" runat="server" UpdateMode="Conditional">
        <ContentTemplate>
            </asp:Timer>
            <asp:Timer ID="Timer1" runat="server" Interval="100" OnTick="Timer1_Tick">
            </asp:Timer>
            <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:masterConnectionString3 %>" SelectCommand="[GET DATA FROM SQL SERVER]"></asp:SqlDataSource>
            <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" CellPadding="4" DataSourceID="SqlDataSource1" ForeColor="Black" GridLines="None" Width="940px">
                <Columns>
                    <asp:BoundField DataField="Column1" HeaderText="Column1" HtmlEncode="False" ReadOnly="True" SortExpression="Column1" />
                    <asp:BoundField DataField="Column2" HeaderText="Column2" ReadOnly="True" SortExpression="Column2" />
                </Columns>
            </asp:GridView>
                <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
                </ContentTemplate>
            </asp:UpdatePanel>

2 个答案:

答案 0 :(得分:2)

我通过在GridView中使用本地图像修复它,并且仅在需要时使用:

更新GridView 更新面板中的

UpdateMode="Conditional"和代码隐藏中的UpdatePanel.Update();。现在很棒!

参考和示例代码可在以下位置找到:http://msdn.microsoft.com/en-us/library/system.web.ui.updatepanel.updatemode.aspx

答案 1 :(得分:0)

GridView闪烁,因为计时器发生了回发。将计时器放在不同的更新面板中。