daniel183
Goto Top

PowerShell GUI - ListView nur bestimmten Text einfärben

Hallo zusammen,

heute mal wieder mit einer PowerShell-Frage die mich ein wenig nervt...

Ich habe eine PowerShell-GUI mit einem Schalter und einem ListView.

Das (die?, der?) ListView-Element wird mit den Werten aus einer Variable ($anzeige) geladen.
Nun soll aber anhand einer anderen Variable ($suchbegriff) nur das in der ListView grün gemacht werden was den Suchbegriff aus der $suchbegriff-Variable enthält und der Rest nicht.

So wird das ListView befüllt:
$ListView1.BeginUpdate()
foreach ($anzeige in $anzeige)
{  
     $ListView1.Items.Add($anzeige)
}
$ListView1.EndUpdate()

Langsam aber sicher...bin ich leicht gestresst...

Evtl. liegt es auch an der Uhrzeit - aber es ist ziemlich nervig, wenn man nicht vorwärts kommt...

Ich würde mich über Hilfe sehr freuen.

Danke dafür!

MfG
Daniel


PS.:
Ich bin nicht auf das ListView festgefahren.
Von mir aus kann das eine ListBox oder sonst was sein.
Wichtig ist, dass ich am Ende verschiedene Elemente auswählen kann, die ich dann wieder an die nächste Aufgabe weitergeben kann.

Content-ID: 594210

Url: https://administrator.de/forum/powershell-gui-listview-nur-bestimmten-text-einfaerben-594210.html

Ausgedruckt am: 20.04.2025 um 21:04 Uhr

mbehrens
mbehrens 07.08.2020 um 00:31:58 Uhr
Goto Top
Zitat von @Daniel183:

Hallo zusammen,

heute mal wieder mit einer PowerShell-Frage die mich ein wenig nervt...

Ich habe eine PowerShell-GUI mit einem Schalter und einem ListView.

Das (die?, der?) ListView-Element wird mit den Werten aus einer Variable ($anzeige) geladen.
Nun soll aber anhand einer anderen Variable ($suchbegriff) nur das in der ListView grün gemacht werden was den Suchbegriff aus der $suchbegriff-Variable enthält und der Rest nicht.

So wird das ListView befüllt:
$ListView1.BeginUpdate()
> foreach ($anzeige in $anzeige)
> {  
>      $ListView1.Items.Add($anzeige)
> }
> $ListView1.EndUpdate()
> 


Iteriere über die Items und setzte BackColor entsprechend.
Daniel183
Daniel183 07.08.2020 um 05:19:39 Uhr
Goto Top
Zitat von @mbehrens:


Iteriere über die Items und setzte BackColor entsprechend.

Hm
Kannst du mir ein funktionierendes Beispiel zeigen?
Alles was ich mache führt dazu, dass entweder:
- der gesamte Inhalt der ListView farbig ist
- sich an der Farbe nichts ändert

Ich bin wohl etwas überfordert mit dieser Geschichte 🙈

Danke für deine Hilfe.

MfG
Daniel
emeriks
emeriks 07.08.2020 um 08:30:16 Uhr
Goto Top
Zitat von @Daniel183:
Das (die?, der?) ListView-Element wird mit den Werten aus einer Variable ($anzeige) geladen.
Das ListView-Element ... face-wink
145033
Lösung 145033 07.08.2020 aktualisiert um 08:41:21 Uhr
Goto Top
$listview1.Items | ?{$_.Text -like $suchbegriff} | %{$_.Backcolor = [Systm.Drawing.Color]::Green}
Daniel183
Daniel183 07.08.2020 um 09:04:21 Uhr
Goto Top
Hi kleiber,

danke - aber da passiert gar nichts wenn ich das versuche...

MfG
Daniel
emeriks
emeriks 07.08.2020 um 09:11:37 Uhr
Goto Top
Die Variable $suchbegriff musst Da natürlich vorher füllen, das ist klar, oder?
Daniel183
Daniel183 07.08.2020 um 10:20:55 Uhr
Goto Top
Das ist klar - die ist von Haus aus gefüllt.

Also die wird schon beim klicken auf den Button gefüllt.
Aber - da ändert sich dennoch nichts 🙈
145033
Lösung 145033 07.08.2020 aktualisiert um 10:36:41 Uhr
Goto Top
Jaaaa der Freitag, da bekommen die Affen offensichtlich keine Bananen... verzell mir nüscht geht doch ...

screenshot

Hast wohl den Suchbegriff nicht mit Wildcards versehen wenn der nicht zu 100 Prozent übereinstimmt.
Daniel183
Daniel183 07.08.2020 um 10:41:39 Uhr
Goto Top
🙈🙈
OMG
Ich hab den schon mit Wildcards versehen aber...naja...also...hm...ich hab leider einen Begriff verwendet der bei dieser speziellen Abfrage gar nicht dabei war 🙈
Ich sollte nicht Nachts um 1 sowas machen...

Danke für deine Hilfe!
Jetzt klappt es!

MfG
Daniel