none
Sort ListView RRS feed

  • Frage

  • Guten Tag alle miteinander,

    habe schon länger nichts mehr von Euch gelesen (zumindest bezüglich des Arposh tools).

    Meine Anfrage hatte ich schon ein paar mal aktualisiert aber kein feedback. Naja, hier eine neue Frage.

    Konnte in dem Arposh tool erfolgreich (zumindest mehr oder weniger) eine Funktion zum sortieren der listview einbinden.

    Das einzigste Problem ist wenn ich in dem Tool die Option System Info starte und dort die listview sortiere, wird die listview nicht korrekt sortiert da sich in dieser Überschriften befinden.

    Wie kann ich den code abändern damit die listview inklusive der Überschriften richtig sortiert wird.

    Vorab vielen Dank.

    Hier der code für die ListView

    $lvMain.add_ColumnClick({SortListView $_.Column})
    
    
    
    ############################
    
       function SortListView
        {
            param([parameter(Position=0)][UInt32]$Column)
     
            $Numeric=$true # determine how to sort
     
            if($Script:LastColumnClicked -eq $Column)
            {
                $Script:LastColumnAscending = -not $Script:LastColumnAscending
            }
            else
            {
                $Script:LastColumnAscending=$true
            }
            $Script:LastColumnClicked=$Column
            $ListItems= @(@(@()))   # three-dimensional array; column 1 indexes the other columns, column 2 is the value to be sorted on, and column 3 is the System.Windows.Forms.ListViewItem object
     
            foreach($ListItem in $lvMain.Items)
            {
                # if all items are numeric, can use a numeric sort
                if($Numeric -ne $false) # nothing can set this back to true, so don't process unnecessarily
                {
                    try
                    {
                        $Test = [Double]$ListItem.SubItems.Text[$Column]
                    }
                    catch
                    {
                        $Numeric=$false # a non-numeric item was found, so sort will occur as a string
                    }
                }
                $ListItems+= ,@($ListItem.SubItems.Text[$Column], $ListItem)
            }
     
            $EvalExpression= {
                if($Numeric)
                { return [Double]$_[0] }
                else
                { return [String]$_[0] }
            }
     
            $ListItems=$ListItems | Sort-Object -Property @{Expression=$EvalExpression; Ascending=$Script:LastColumnAscending}
     
            $lvMain.BeginUpdate()
            $lvMain.Items.Clear()
            foreach($ListItem in $ListItems)
            {
                $lvMain.Items.Add($ListItem[1])
            }
            $lvMain.EndUpdate()
        }
    
    
    ######################################

     

    • Bearbeitet 001fred Dienstag, 3. Juni 2014 14:05
    Dienstag, 3. Juni 2014 13:57

Antworten

  • Falls du da Problem nicht schon selbst gelöst hast, ist hier eine sehr schöne Anleitung zum Thema: LINK

    Grüße, Denniver


    Blog: http://bytecookie.wordpress.com
    Powershell Codesnippet Manager: Link

    Hilf mit und markiere hilfreiche Beiträge mit dem "Abstimmen"-Button (links) und Beiträge die eine Frage von dir beantwortet haben, als "Antwort" (unten).
    Warum das Ganze? Hier gibts die Antwort.

    • Als Antwort vorgeschlagen Peter Kriegel Montag, 7. Juli 2014 14:07
    • Als Antwort markiert 001fred Mittwoch, 9. Juli 2014 12:27
    Freitag, 4. Juli 2014 22:15
    Moderator

Alle Antworten

  • Falls du da Problem nicht schon selbst gelöst hast, ist hier eine sehr schöne Anleitung zum Thema: LINK

    Grüße, Denniver


    Blog: http://bytecookie.wordpress.com
    Powershell Codesnippet Manager: Link

    Hilf mit und markiere hilfreiche Beiträge mit dem "Abstimmen"-Button (links) und Beiträge die eine Frage von dir beantwortet haben, als "Antwort" (unten).
    Warum das Ganze? Hier gibts die Antwort.

    • Als Antwort vorgeschlagen Peter Kriegel Montag, 7. Juli 2014 14:07
    • Als Antwort markiert 001fred Mittwoch, 9. Juli 2014 12:27
    Freitag, 4. Juli 2014 22:15
    Moderator
  • Hallo Denniver,

    danke für den Link.

    Die meisten Links/Documente und Bücher tips habe ich auch schon gefunden aber leider habe ich noch so meine Probleme mit den unterschiedlichen Programiersprachen (C#, C## VB etc.) weshalb ich auch nicht weiss wie ich die in Powershell scripte einbinden kann.

    Vielen Dank!!

    Mittwoch, 9. Juli 2014 12:27