2009-07-11 4 views

答えて

3

は、すべてのコードビハインドにのみ、サーバー上で実行されていることを忘れないでください... RaisePostBackEventメソッドを使用するようにしようと試みたが、スタックオーバーフロー例外を持って後ろに私はコードで

<asp:UpdatePanel ID="UpdatePanel1" UpdateMode="Conditional" runat="server"> 
     <Triggers> 
      <asp:AsyncPostBackTrigger ControlID="Timer1" EventName="Tick" /> 
     </Triggers> 
     <ContentTemplate> 
       <asp:DataList ID="lstComputers" runat="server" DataKeyField="ComputerID" DataSourceID="ComputersDataSource" 
        OnItemDataBound="lstComputers_ItemDataBound" OnItemCommand="lstComputers_ItemCommand"> 
        <HeaderTemplate> 

        // Header data 

        </HeaderTemplate> 
        <ItemTemplate> 

        // Item template 

        </ItemTemplate> 
       </asp:DataList> 

         <asp:UpdateProgress ID="UpdateProgress2" runat="server"> 
          <ProgressTemplate> 
           <img border="0" src="images/loading.gif" /> 
          </ProgressTemplate> 
         </asp:UpdateProgress> 

     </ContentTemplate> 
    </asp:UpdatePanel> 

のようなコードをしました。したがって、Timer1_Tick()メソッドが実行されている場合、Timer であり、PostBackが発生します。

そのメソッドを実行しているStackOverflowExceptionを取得するのは、単にそれ自体を無限に呼び出すためです。再帰的に再呼び出しするのではなく、そのメソッドに更新コードを配置する必要があります。

0

setTimeout()およびsetInterval()JavaScript関数を見てください。これはすべて、サーバー側ではなく、クライアント上で発生する必要があります。

-3
protected void Timer1_Tick(object sender, EventArgs e) 
{ 
    lstComputers.DataBind(); 
} 

をリロードデータの問題を解決しました
関連する問題