Pergunta

Eu tenho um procedimento de armazenamento que alças de paginação a nível de banco de dados, recebendo @ PageSize e @ PageIndex . Eu posso criar um outro para retornar @ PageCount , dado um tamanho da página.

Eu posso fazer um datagrid que paginação a nível de banco de dados sem ter que desenvolvê-lo fora do controle, usando o pager controle?

Parece uso padrão de paginação datagrid recebe tudo resultado da consulta, e não paginação fora do banco de dados. Não é bom para nós, uma sobrecarga desnecessária.

Foi útil?

Solução

Set AllowCustomPaging = "true" no aspx. E quando databinding fazer:

mygrid.VirtualItemCount = pageCount; 
mygrid.DataSource = mysource; 
mygrid.DataBind();

Com base no seu comentário "Eu uso conexão ADO, comando, etc, e depois de carregamento resulta em uma lista de objetos (minhas classes de entidade), faço DataGrid.DataSource = Lista";

Outras dicas

Se você usa um controle ObjectDataSource como o DataSourceID do GridView, em seguida, ele funciona muito facilmente. Os controles ObjectDataSource tem um par de parâmetros onde você pode dizer que os nomes das propriedades pageIndex e MaxRows.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top