Ir para conteúdo
Fórum Script Brasil
  • 0

DataList e UpdatePanel


VB6DeveloperJr

Pergunta

Pessoal, estou com um DataList e dentro do ItemTemplate, possui um label informando o Status do registro, preciso fazer uma atualização a cada 3 seg, nesse status.

Para isso eu fiz o seguinte,

<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
    <ContentTemplate>
        <asp:Timer ID="Timer1" runat="server" OnTick="Timer1_Tick" Enabled="true" Interval="3000">
        </asp:Timer>
        <asp:DataList ID="dtlMonitoracao" runat="server" RepeatColumns="4" RepeatDirection="Horizontal"
            CellPadding="2" HorizontalAlign="Center" ShowFooter="False" ShowHeader="False"
            CellSpacing="2">
            <ItemTemplate>
                <asp:Panel ID="pnlCanais" runat="server"  BorderWidth = "2" >
                    <table width="200px" height="70px" align="center">
                        <tr valign="top">
                            <td>
                                <asp:Label ID="lblStatus" runat="server" CssClass="transparenciaPNG" CommandName="ExibirGravacoes" 
                                CommandArgument='<%# Eval("CANAL").ToString() + ";" + Eval("IP").ToString() %>' />
                            </td>
                            <td>
                                <asp:Label ID="lblCanais" runat="server" Text='<%# "Canal " + Eval("Canal").ToString() %>'
                                    Font-Bold="True"></asp:Label>
                            </td>
                        </tr>
                        <tr valign="bottom">
                            <td>
                                <asp:ImageButton ID="imgOuvir" runat="server" CssClass="transparenciaPNG" ImageUrl="/App_Themes/Imagens/falante.png"
                                    CommandName="ExecutaAudio" CommandArgument='<%# Eval("CANAL").ToString() + ";" + Eval("CAMINHO").ToString() %>' />
                            </td>
                        </tr>
                    </table>
                </asp:Panel>
            </ItemTemplate>
        </asp:DataList>
    </ContentTemplate>
</asp:UpdatePanel>

Existe um Timer com o Interval de 3 seg, dentro do UpdatePanel, e no evento Tick eu faço a verficação do status do registro e percorro o DataList fazendo a devida alteração.

Teoricamente era pra tudo funcionar sem problemas, mas o navegador la na barra de status fica como se tivesse carregando a pagina a cada 3 seg, fazendo a aplicação ficar muito lenta!

alguém teria alguma ideia de como resolver isto?

Obrigado!!!

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Ok,seria dessa forma?

<asp:Timer ID="Timer1" runat="server" OnTick="Timer1_Tick" Enabled="true" Interval="3000">
</asp:Timer>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
    <Triggers>
         <asp:AsyncPostBackTrigger ControlID = "Timer1" EventName = "Tick" />
    </Triggers>
    <ContentTemplate>
        <asp:DataList ID="dtlMonitoracao" runat="server" RepeatColumns="4" RepeatDirection="Horizontal"
            CellPadding="2" HorizontalAlign="Center" ShowFooter="False" ShowHeader="False"
            CellSpacing="2">
            <ItemTemplate>
                <asp:Panel ID="pnlCanais" runat="server"  BorderWidth = "2" >
                    <table width="200px" height="70px" align="center">
                        <tr valign="top">
                            <td>
                                <asp:Label ID="lblStatus" runat="server" CssClass="transparenciaPNG" CommandName="ExibirGravacoes" 
                                CommandArgument='<%# Eval("CANAL").ToString() + ";" + Eval("IP").ToString() %>' />
                            </td>
                            <td>
                                <asp:Label ID="lblCanais" runat="server" Text='<%# "Canal " + Eval("Canal").ToString() %>'
                                    Font-Bold="True"></asp:Label>
                            </td>
                        </tr>
                        <tr valign="bottom">
                            <td>
                                <asp:ImageButton ID="imgOuvir" runat="server" CssClass="transparenciaPNG" ImageUrl="/App_Themes/Imagens/falante.png"
                                    CommandName="ExecutaAudio" CommandArgument='<%# Eval("CANAL").ToString() + ";" + Eval("CAMINHO").ToString() %>' />
                            </td>
                        </tr>
                    </table>
                </asp:Panel>
            </ItemTemplate>
        </asp:DataList>
    </ContentTemplate>
</asp:UpdatePanel>

Link para o comentário
Compartilhar em outros sites

  • 0

Testei Quintelab, e nada aindaa..

já tentei de tudo e nada resolve,

eu verifiquei no Gerenciador de Tarefas do Windows, e o consumo de memoria do iexplore aumenta quase 1000 k, a cada interval do Timer, e isso faz o navegador travar entende?

não sei o que pode estar acumulando tantas requisições assim, porque no evento Tick eu faço uma consulta somente a porta socket e fecho a conexão depois...

enfim, alguma sugestão de como resolver??

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...