Visualizzazione dei risultati da 1 a 6 su 6

Discussione: DataGrip sorting

  1. #1

    DataGrip sorting

    Ciao ragazzi,
    allora ho un DatGrid, seguendo le istruzioni sull'MSDN di Microsoft ho messo un sorting sul titolo della colonna ma quando clicco non me la oridna.
    Agendo sul Code Behind e usare il comando "PageIndexChange" ma come fare??

    Richiamo il contenuto del DataGrid tramite un su
    Sub BindDataGrid()
    Dim connstr As String
    connstr = "Data Source=localhost; Initial Catalog=PROVA; User ID=sa;Password=xxxx;"
    Dim mySqlConn As New SqlConnection(connstr)
    mySqlConn.Open()
    Dim SQL2 As String = "select * from HTML"
    Dim dad As SqlDataAdapter
    Dim dst As DataSet
    dad = New SqlDataAdapter(SQL2, mySqlConn)
    dst = New DataSet
    dad.Fill(dst)
    DataGrid2.DataSource = dst
    DataGrid2.DataBind()
    mySqlConn.Close()
    End Sub

    grazie a tutti
    spider81man

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2001
    Messaggi
    1,482
    L'evento non è PageIndexChanged ma SortCommand

    Hey hey, my my Rock and roll can never die!

  3. #3
    Si ma come faccio????

  4. #4
    Con la funzione che hai scritto ogni volta che la chiami ti ricarica la datagrid fregandosene di eventuali scelte dell'utente. Dovresti ad es. caricare e collagare la fonte dati alla datagrid usando due funzioni separate. Impostare nella proprieta' datasource della datagrid il nome della funzione che ritorna ad es. una dataview (ordinata come vuole l'utente) e cosi facendo ogni volta che chiami il databind della pagina o solo della datagrid avviene il diverso ordinamento.
    C'e' la prima parte di un articolo su freeasp.html.it che potrebbe esserti utile.
    Saluti a tutti
    Riccardo

  5. #5
    Ciao e grazie per la risposta.
    infatti la funzione da me postata serve per la paginazione e non per l'ordinamento per colonna.
    Qualcuno mi puotrebbe postare una funzione che fa ciò in comdo che la faccio richiamare da "PageIndexChanged" o da "SortCommand"??
    Grazie mille mi fareste un favore sono un novizio in ASP.NET

  6. #6
    Ho risolto il problema parzialmente così:

    Private Sub DataGrid2_SortCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridSortCommandEvent Args) Handles DataGrid2.SortCommand
    Dim connstr As String
    connstr = "Data Source=localhost; Initial Catalog=PROVA; User ID=sa;Password=xxxxx;"
    Dim mySqlConn As New SqlConnection(connstr)
    mySqlConn.Open()

    Dim SQL2 As String = "select * from HTML order by " + e.SortExpression + " asc"
    Dim dad As SqlDataAdapter
    Dim dst As DataSet
    dad = New SqlDataAdapter(SQL2, mySqlConn)
    dst = New DataSet
    dad.Fill(dst)
    DataGrid2.DataSource = dst
    DataGrid2.DataBind()
    mySqlConn.Close()
    End Sub

    Ora vorrei sapere come fare in modo che quando premo una seconda volta l'ordinamento cambi da "asc" a "desc".
    Grazie
    spider81man

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.