Hoe te Kolommen in DataGrid Sorteer

DataGrids kunnen informatie te presenteren in een gemakkelijk te begrijpen formaat. image tafel en potlood door Daraban Oana Gabriela uit Fotolia.com

DataGrids zijn .NET-besturingselementen waarmee gebruikers gegevens weer te geven in een tabel-achtige manier, maar met veel meer functionaliteit en mogelijkheden.DataGrids taken kunnen ondersteunen, zoals het invoegen, bewerken en verwijderen van gegevens.Ze kunnen ook worden opgeroepen, wat betekent dat je kleinere hoeveelheden gegevens op uw scherm kan laten zien op een tijd en gebruikers kunnen bladeren door hen.Sortering aflopend is een ander kenmerk van DataGrids evenwel geen aangepaste codering, kunnen ze niet worden gesorteerd in oplopende volgorde.Een sorteerbare DataGrid heeft koppeling knoppen voor kolomkoppen en zal het net te werken wanneer de gebruiker klikt op hen.

inschakelen op Standaard sorteren

  1. rechtermuisknop op uw DataGrid in het ontwerp bekijken.

  2. Kies \ "Bezit Builder \" uit het pop-up menu.

  3. Markeer het selectievakje voor sectie \ "Sta sorteren \" onder de \ "Gedrag

    \" van de \ tabblad 'Algemeen \ ".

  4. Klik op de \ "Kolommen \" tab in het menu aan de linkerkant.

  5. Zorg ervoor dat elke kolom worden gesorteerd door te klikken op de naam in de \ "Geselecteerde kolommen \" lijst en het kiezen van een waarde in de \ "Sort Expression \" drop-down lijst.

  6. Klik op de \ "OK \" knop om uw wijzigingen op te slaan.

Custom bi-directionele sorteren

  1. Voer alle stappen voor het inschakelen van standaard sortering.

  2. Druk op de F7 om te schakelen naar \ "Code Editor \" view.

  3. Kies uw DataGrid uit de keuzelijst van de controles aan de linkerbovenhoek van het venster, en selecteer dan de \ "sorteren Command \" event van de drop-down lijst van de gebeurtenissen in de rechterbovenhoek.Dit zal een event handler maken voor u om de standaard sorteren overschrijven.

  4. code toevoegen aan uw soort event handler aan de juiste sorteervolgorde en de kolom om te sorteren door te bepalen.Kopieer onderstaande code in uw code bestand.

    'VB.NET voorbeeld
    Sub myGrid_Sort (afzender als Voorwerp, e als DataGridSortCommandEventArgs) Handles myGrid.SortCommand

    Als e.SortExpression.ToString () = Session (\ & amp; quot; SortBy \ & amp; quot;) Dan
    IndienSession (\ & amp; quot; SortOrder \ & amp; quot;) = \ & amp; quot; ASC \ & amp; quot;Dan
    Session (\ & amp; quot; SortOrder \ & amp; quot;) = \ & amp; quot; DESC \ & amp; quot;
    Else
    Session (\ & amp; quot; SortOrder \ & amp; quot;) = \ & amp; quot; ASC \ & amp; quot;
    Eind als
    Else
    Session (\ & amp; quot; SortBy \ & amp; quot;) = e.SortExpression.ToString ()
    Session (\ & amp; quot; SortOrder \ & amp; quot;) = \ & amp; quot; ASC\ & amp; quot;
    End If

    'Code voor data binding GAAT HIER

    End Sub

    // C # voorbeeld
    leegte myGrid_Sort (Object afzender DataGridSortCommandEventArgs e)

    {if (e.SortExpression.ToString () == Session [\ & amp;quot; SortBy \ & amp; quot;])
    {
    als (Session [\ & amp; quot; SortOrder \ & amp; quot;] == \ & amp; quot; ASC \ & amp; quot;)
    Session [\ & amp; quot; SortOrder \ & amp; quot;] = \ & amp; quot; DESC \ & amp; quot;

    GO

    anders
    Session [\ & amp; quot; SortOrder \ & amp; quot;] = \ & amp; quot; ASC \ & amp; quot;

    GO

    }
    anders
    {
    Session [\ & amp; quot; SortBy \ & amp; quot;] = e.SortExpression.ToString ()

    GO

    Session [\ & amp; quot; SortOrder \ & amp; quot;] = \& amp; quot; ASC \ & amp; quot;

    GO

    }

    // CODE VOOR data binding GAAT HIER

    }

  5. code toevoegen aan uw soort event handler aan de DataGrid met de juiste sortering opnieuw binden.Combineer onder de code met de event handler reeds in uw code bestand.

    'VB.NET voorbeeld
    Sub myGrid_Sort (afzender als Voorwerp, e als DataGridSortCommandEventArgs) Handles myGrid.SortCommand

    ' CODE VOOR SORTEER GAAT HIER

    Dim myDataView als Nieuwe DataView (myDataSource.Tables (\ & amp; quot; myTable \ & amp; quot;))
    myDataView.Sort = Session (\ & amp; quot; SortBy \ & amp; quot;) & amp; amp;\ & amp; quot;\ & amp; quot;& amp; amp;Session (\ & amp; quot; SortOrder \ & amp; quot;)
    myGrid.Datasource = myDataView
    myGrid.DataBind ()

    End Sub

    // C # voorbeeld
    leegte myGrid_Sort (Object afzender DataGridSortCommandEventArgs e)
    {

    // CODE VOOR SORTEER GAAT HIER

    DataView myDataView = new DataView (myDataSource.Tables [\ & amp; quot; myTable \ & amp; quot;])

    GO

    myDataView.Sort = Session [\ & amp; quot; SortBy \ & amp;quot;] & amp; amp;\ & amp; quot;\ & amp; quot;& amp; amp;Zitting [\ & amp; quot; SortOrder \ & amp; quot;]

    GO

    myGrid.Datasource = myDataView

    GO

    myGrid.DataBind ()

    GO
    }

Tips & amp;Waarschuwingen

  • Een alternatief voor het bewerken van uw DataGrid in het ontwerp om standaard sortering te bereiken is om het te bewerken in de bron en voeg de \ "Sta sorteren \" eigenschap om uw DataGrid tag definitie en zet deze op \ "True.\ "
  • De DataView object kan ook worden gebruikt om de inhoud van uw DataGrid met de eigenschap RowFilter filteren.
  • De DataGrid is vervangen door de GridView in versies van .NET na 2.0.De GridView control is zeer vergelijkbaar, maar omvat meer functionaliteit.
954
0
3
Computer Programmeertalen