locked
GridView Lento RRS feed

  • Pergunta

  • Pessoal tenho uma aplicação cuja a execução de uma determinada pagina me retorna muitos registros num GridView o que deixa a pagina muito lenta pois esse GridView ainda possui algumas consistências no DataBound etc... Não posso paginar o Grid tem que ser tudo numa tela só. Uma vez vi uma solução que conforme você vai descendo com a barra de rolagem os dados do GridView vão sendo carregado aos poucos. Ou seja não traz tudo do banco de uma vez vai trazendo a medida que vai descendo com a barra de rolagem. Alguém sabe como fazer isso? Teria algum exemplo pra me ajudar? Na parte de banco acho que viro o problema é tela fazer a pagina entender que a cada scrool down devo ir no banco buscar mais X registros. Se alguém souber ou ter um exemplo pra me ajudar ficaria muito agradecido.

    Fernando

    segunda-feira, 31 de agosto de 2015 12:28

Respostas

  • Fernando,

    Realmente precisam vir muitos registros? Trabalhei em instituições bancárias, lugares nos quais somos obrigados a manipular grandes volumes de informações.

    Em muitos casos, limitamos o retorno a 50, 100, 200 registros, mantendo uma paginação. Acho muito difícl um usuário navegar por 100 páginas diferentes caçando uma informação. Tendo em vista este princípio, pq vc não limita o retorno da sua pesquisa a um número x de registros, colocando uma observação para que o usuário refine os critérios de busca caso não encontre o que deseja?

    Abs

    • Marcado como Resposta Marcos SJ quinta-feira, 3 de setembro de 2015 18:59
    segunda-feira, 31 de agosto de 2015 14:07
  • Fernando,

    É como o Renato disse , normalmente limitamos a quantidade de registros, eu particularmente faço uma paginação de 25 registros , acho q mais do q isso a pagina fica poluída, poderia desabilitar o ViewState para melhorar o carregamento do grid se não tiver a necessidade de usa-ló !!! mas o ideal mesmo é não carregar muitos registros na pagina... trabalhe sempre com paginação.

    Att , Diego  



    Diego Almeida Barreto
    System Analyst / Software Developer

    • Marcado como Resposta Marcos SJ quinta-feira, 3 de setembro de 2015 18:59
    segunda-feira, 31 de agosto de 2015 15:30
  • Opa, tudo bom ferlindo7?

    Realmente tenho que concordar com o resto do pessoal que esse comportamento aí foge do padrão e das boas práticas. De qualquer forma, encontrei uma solução que talvez atenda sua necessidade, e eu particularmente não recomendaria, pois é gambiarra. Veja o link abaixo:

    Load DataGridView on Scroll Down in C#

    Espero que possa lhe ajudar.

    • Marcado como Resposta Marcos SJ quinta-feira, 3 de setembro de 2015 18:59
    quarta-feira, 2 de setembro de 2015 19:46

Todas as Respostas

  • Fernando,

    Realmente precisam vir muitos registros? Trabalhei em instituições bancárias, lugares nos quais somos obrigados a manipular grandes volumes de informações.

    Em muitos casos, limitamos o retorno a 50, 100, 200 registros, mantendo uma paginação. Acho muito difícl um usuário navegar por 100 páginas diferentes caçando uma informação. Tendo em vista este princípio, pq vc não limita o retorno da sua pesquisa a um número x de registros, colocando uma observação para que o usuário refine os critérios de busca caso não encontre o que deseja?

    Abs

    • Marcado como Resposta Marcos SJ quinta-feira, 3 de setembro de 2015 18:59
    segunda-feira, 31 de agosto de 2015 14:07
  • Fernando,

    É como o Renato disse , normalmente limitamos a quantidade de registros, eu particularmente faço uma paginação de 25 registros , acho q mais do q isso a pagina fica poluída, poderia desabilitar o ViewState para melhorar o carregamento do grid se não tiver a necessidade de usa-ló !!! mas o ideal mesmo é não carregar muitos registros na pagina... trabalhe sempre com paginação.

    Att , Diego  



    Diego Almeida Barreto
    System Analyst / Software Developer

    • Marcado como Resposta Marcos SJ quinta-feira, 3 de setembro de 2015 18:59
    segunda-feira, 31 de agosto de 2015 15:30
  • Obrigado por responderem. mas realmente o cliente solicitou que todos os registros fossem exibidos na tela sem paginação não houve como contra argumentar. A minha idéia era ir trazendo os registros aos poucos a medida que que ele fosse descendo com o scrool. Mas não estou conseguindo e estou pesquisando bastante também. Talvez tenha alguma outra solução que eu não esteja vendo
    segunda-feira, 31 de agosto de 2015 17:03
  • Opa, tudo bom ferlindo7?

    Realmente tenho que concordar com o resto do pessoal que esse comportamento aí foge do padrão e das boas práticas. De qualquer forma, encontrei uma solução que talvez atenda sua necessidade, e eu particularmente não recomendaria, pois é gambiarra. Veja o link abaixo:

    Load DataGridView on Scroll Down in C#

    Espero que possa lhe ajudar.

    • Marcado como Resposta Marcos SJ quinta-feira, 3 de setembro de 2015 18:59
    quarta-feira, 2 de setembro de 2015 19:46