asp.net定时刷新局部信息

主要用到:

<asp:ScriptManager ID="ScriptManager1" runat="server" />
        <asp:Timer ID="Timer1" OnTick="Timer1_Tick" runat="server" Interval="10000" />

        <asp:UpdatePanel ID="StockPricePanel" runat="server" UpdateMode="Conditional">
        <Triggers>
            <asp:AsyncPostBackTrigger ControlID="Timer1" />
        </Triggers>
        <ContentTemplate>
            Stock price is <asp:Label id="StockPrice" runat="server"></asp:Label><BR />
            as of <asp:Label id="TimeOfPrice" runat="server"></asp:Label>  
            <br />

        </ContentTemplate>
        </asp:UpdatePanel>

  后台:

protected void Timer1_Tick(object sender, EventArgs e)
        {
            StockPrice.Text = GetStockPrice();
            TimeOfPrice.Text = DateTime.Now.ToLongTimeString();
        }

  我主要在LIstView或者GridView中定时刷新数据:

 <table class="TableStyle">
        <tr>
            <td>
                地块:<asp:DropDownList ID="ddl_Ground" runat="server" AutoPostBack="true">
                </asp:DropDownList>
            </td>
        </tr>
    </table>
    <asp:ScriptManager ID="ScriptManager1" runat="server" />
    <asp:Timer ID="Timer1" OnTick="Timer1_Tick" runat="server" Interval="20000" />
    <asp:UpdatePanel ID="StockPricePanel" runat="server" UpdateMode="Conditional">
        <Triggers>
            <asp:AsyncPostBackTrigger ControlID="Timer1" />
        </Triggers>
        <ContentTemplate>
            <asp:ListView ID="QiFang_Data_List" runat="server" DataSourceID="QiFang_Datasource">
                <LayoutTemplate>
                    <table id="UserData" class="TableSub">
                        <tr>
                            <th scope="col">
                                <asp:Label ID="Label1" runat="server" Text="所属地块" />
                            </th>
                            <th scope="col">
                                <asp:Label ID="LinkButton1" runat="server" Text="户型" />
                            </th>
                            <th scope="col">
                                <asp:Label ID="LinkButton3" runat="server" Text="已选房源" />
                            </th>
                            <th scope="col">
                                <asp:Label ID="LinkButton2" runat="server" Text="房源总数" />
                            </th>
                        </tr>
                        <asp:PlaceHolder ID="itemPlaceholder" runat="server"></asp:PlaceHolder>
                    </table>
                </LayoutTemplate>
                <ItemTemplate>
                    <tr>
                        <td>
                            <%#Eval("G_NAME")%>
                        </td>
                        <td>
                            <%#Eval("ROOM_SHAPE")%>
                        </td>
                        <td>
                            <%#Eval("YiXuanCount")%>
                        </td>
                        <td>
                            <%#Eval("QiFangCount")%>
                        </td>
                    </tr>
                </ItemTemplate>
                <EmptyItemTemplate>
                    没有数据
                </EmptyItemTemplate>
            </asp:ListView>
            <div class="PageSize">
                <%--分页控件--%>
                <asp:DataPager ID="DataPager1" runat="server" PagedControlID="QiFang_Data_List" EnableViewState="false"
                    PageSize="12">
                    <Fields>
                        <asp:TemplatePagerField>
                            <PagerTemplate>
                                共<%=DataCount%>条记录, 当前第<asp:Label runat="server" ID="CurrentPageLabel" Text="<%# Container.TotalRowCount>0 ? (Container.StartRowIndex / Container.PageSize) + 1 : 0 %>" />/<asp:Label
                                    runat="server" ID="TotalPagesLabel" Text="<%# Math.Ceiling ((double)Container.TotalRowCount / Container.PageSize) %>" />页,
                            </PagerTemplate>
                        </asp:TemplatePagerField>
                        <asp:NextPreviousPagerField ButtonType="Image" ButtonCssClass="PageCss" ShowFirstPageButton="true"
                            ShowPreviousPageButton="true" ShowLastPageButton="false" ShowNextPageButton="false"
                            FirstPageText="首页" PreviousPageText="上页" FirstPageImageUrl="~/Images/page1.png"
                            PreviousPageImageUrl="~/Images/page3.png" />
                        <asp:NumericPagerField />
                        <asp:NextPreviousPagerField ButtonType="Image" ShowNextPageButton="true" ButtonCssClass="PageCss"
                            ShowLastPageButton="true" ShowFirstPageButton="false" ShowPreviousPageButton="false"
                            LastPageText="末页" LastPageImageUrl="~/Images/page2.png" NextPageImageUrl="~/Images/page4.png"
                            NextPageText="下页" />
                    </Fields>
                </asp:DataPager>
            </div>
            <asp:ObjectDataSource ID="QiFang_Datasource" runat="server" SelectMethod="Get_QiFang_Data"
                TypeName="BQ.BLL.FangYuan.QiFangManager" MaximumRowsParameterName="pageSize"
                StartRowIndexParameterName="startIndex" EnablePaging="True" SelectCountMethod="Get_Count"
                EnableViewState="false" UpdateMethod="Update_QiFang_Room">
                <SelectParameters>
                    <asp:ControlParameter ControlID="ddl_Ground" Name="GR_ID" Type="Int64" PropertyName="SelectedValue" />
                </SelectParameters>
            </asp:ObjectDataSource>
        </ContentTemplate>
    </asp:UpdatePanel>

  后台在定时事件中进行数据重新绑定:

 protected void Timer1_Tick(object sender, EventArgs e)
        {
            QiFang_Data_List.DataBind();
        }

  

posted @ 2014-04-03 10:39  天殇月痕  阅读(2611)  评论(0编辑  收藏  举报