Fala, galera!!
Quando utilizamos o DataPager para paginarmos dados em um controle de repetição, como o Datalist, nos deparamos com um comportamento "estranho" da paginação.
Este comportamento só ocorre quando preenchemos o datasource do controle de repetição programaticamente através do Code-Behind.
O comportamento ao qual me refiro é a necessidade de se clicar 2x no link de paginação para que a mesma funcione corretamente. São necessários 2 postbacks para se visualizar o efeito do postback anterior.
Exemplo:
Imagine uma paginção de 1 a 5. Serão exibidos 5 links:1 2 3 4 5
Ao clicarmos na página 2, a página não muda. Ao clicarmos na página 3, são exibidos os dados página 2.
Como se houvesse um delay de 1 postback.
A correção para isso é bem simples.
Basta inserirmos o preenchimento do datasource do controle de repetição dentro do evento "PreRender" do controle.
Private Sub DataList1_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreRender
DataList1.datasource = ListaComResultados
DataList1.databind()
End Sub
Um abraço e até a próxima!!
Assinar:
Postar comentários (Atom)
Valeu Rafael, salvou meu dia!!!
ResponderExcluir