ERRO GRIDVIEW

JULIANOPAN 05/04/2012 07:58:44
#399171
Pessoal estou com um problema que não consigo achar solução.

tenho um grid com numero de paginas em baixo dele, mais quando clico para ir para a segunda pagina da um erro.
KERPLUNK 05/04/2012 09:14:52
#399177
Resposta escolhida
A mensagem de erro diz:
O GridView [Ô]GridForm[Ô], disparou o evento PageIndexChanging que não foi feito...

O seu gridview, deve conter o código do que deve ser feito quando trocar de página. Clique no grid, em modo de desenvolvimento e vá na aba de eventos dele. Lá deve existir um chamado [Ô]PageIndexChanging[Ô]. Dê duplo clique nele e escreva o código que deve ser executado quando trocar de página.
JULIANOPAN 05/04/2012 13:57:52
#399220
entao eu coloquei um bloco try para ver o erro.

mais apos isso não ocorreu mais.

mais quando clico na segunda pagina não acontece nada, permanece na primeira.
KERPLUNK 05/04/2012 14:07:28
#399224
é como eu falei, o controle de página é feito no codebehind, no evento PageIndexChanged, nele você deve fazer o código necessário para que o grid exiba os registros da página que o usuário escolheu...
JULIANOPAN 05/04/2012 14:17:08
#399227
estou fazendo assim para popular o grid

Public Function AtualizaDados(ByVal Sql As String) As DataTable
Dim da As New SqlDataAdapter(Sql, strConn)
Dim dt As New DataTable()
da.Fill(dt)
Return dt
End Function

e chamo ele assim

Private Sub AtualizaGrid()
Dim Dt As DataTable
Dim Sql As String
If TFiltro.Text = [Ô][Ô] Then
Sql = [Ô]SELECT CESTA_ID, DESCRICAO, VALOR FROM CESTA WHERE DELETADO = [ô]NÃO[ô] AND [Ô] & FiltroEmpresas & [Ô] ORDER BY DESCRICAO[Ô]
Dt = AtualizaDados(Sql)
Else
Sql = [Ô]SELECT CESTA_ID, DESCRICAO, VALOR FROM CESTA WHERE DELETADO = [ô]NÃO[ô] AND [Ô] & CCampo.SelectedValue & [Ô] LIKE [ô][Ô] & TFiltro.Text.ToUpper & [Ô]%[ô] ORDER BY DESCRICAO[Ô]
Dt = AtualizaDados(Sql)
End If
GridForm.DataSource = Dt
GridForm.DataBind()
End Sub


que codigo tenho que colocar no evento PageIndexChanged?
KERPLUNK 05/04/2012 14:56:48
#399233
Mais ou menos assim(fiz de cabeça e não sei se tem ou não algum erro de sintaxe)
Dim gv as GridView = (GridView)sender;
Dim dv as DataView = gv.DataSource as DataView;
Dim dataTable as DataTable = dv.Table;
if TFiltro.Text = [Ô][Ô] Then
Sql = [Ô]SELECT CESTA_ID, DESCRICAO, VALOR FROM CESTA WHERE DELETADO = [ô]NÃO[ô] AND [Ô] & FiltroEmpresas & [Ô] ORDER BY DESCRICAO[Ô]
Dt = AtualizaDados(Sql)
Else
Sql = [Ô]SELECT CESTA_ID, DESCRICAO, VALOR FROM CESTA WHERE DELETADO = [ô]NÃO[ô] AND [Ô] & CCampo.SelectedValue & [Ô] LIKE [ô][Ô] & TFiltro.Text.ToUpper & [Ô]%[ô] ORDER BY DESCRICAO[Ô]
Dt = AtualizaDados(Sql)
End If
gv.DataSource = Dt
gv.PageIndex = e.NewPageIndex
gv.DataBind()

JULIANOPAN 05/04/2012 17:02:17
#399243
é acho que ficou meio misturado vb com c#.
Tópico encerrado , respostas não são mais permitidas