USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Mudando ordem dos registros numa DataGrid
Fabio
não registrado
Postada em 14/09/2007 14:46 hs   
Dou um "select" com "order by" e jogo os resultados numa DataGrid. Mas queria que quando clicasse no título de cada campo na DataGrid que o "order by" se alterasse para que a ordem passasse a ser pelo campo onde foi dado o clique.
 
Por exemplo, está ordenado por nomes e clico no campo "sobrenome", aí eu gostaria que ficasse ordenado pelo sobrenome e não mais pelo nome.
     
JOM
BOM JESUS DA LAPA
BA - BRASIL
ENUNCIADA !
Postada em 15/09/2007 17:09 hs            
Ponha no eveto HeadClick do Datagrid:
 
Private Sub DataGrid1_HeadClick(ByVal ColIndex As Integer)
Adodc1.Recordset.Sort = Adodc1.Recordset.Fields(ColIndex).Name
End Sub
Não precisa alterar nada neste código, apenas o nome do controle ADODC o resto é constante.
 
Caso não esteja usando o controle vinculado é só colocar o nome de seu Recordset ao invés de adodc1, Rs_recordset.sort
 
Belz?
   
Fabio
não registrado
Postada em 17/09/2007 16:59 hs   
Para conexão eu uso:
 
Public cnn As New ADODB.Connection
cnn.Open "Provider=Microsoft.Jet.OLEDB.3.51;Data Source=C:Meus documentoslamalama.mdb"
 
 
E na RecordSet eu uso:
 
Dim rst As New ADODB.Recordset
rst.Open "SELECT * from tabela1", cnn, adOpenKeyset, adLockOptimistic
 
 
E colocando o código, mesmo com alguns nomes modificados não está indo.
     
JOM
BOM JESUS DA LAPA
BA - BRASIL
Postada em 17/09/2007 20:29 hs            
Bom, sua conexão é igual à minha, agora diz aí, como vc está colocando o Código do HeadClick ? e como vc está inserindo os dados no DataGrid ?
     
Fabio
não registrado
Postada em 18/09/2007 08:33 hs   
Declaro no form:
Dim rst As New ADODB.Recordset
 
E uso o código abaixo para mostrar na grid:
 
rst.Open "SELECT * from tabela1", cnn, adOpenKeyset, adLockOptimistic
Set DataGrid1.DataSource = rst
 
     
JOM
BOM JESUS DA LAPA
BA - BRASIL
Postada em 20/09/2007 22:32 hs            
Seu código deve ficar assim:
 
Private Sub DataGrid1_HeadClick(ByVal ColIndex As Integer)
rst.Sort = rst.Fields(ColIndex).Name
End Sub
 
Lembrando que seu recordset deve estar aberto, se vc efetuou o .close ou .nothing não irá funcionar, a não ser que abra novamente o recordset no evento HeadClick para depois colocar o código de ordem.
     
Página(s): 1/3      PRÓXIMA »


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2025   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página