birdyb
Goto Top

Powershell: Autocomplete (Suggest) während der Eingabe anpassen

Hallo zusammen,

ich benötige bitte einmal eure Hilfe. Folgendes Szenario: Ich habe ein Powershell-Script mit GUI und einer ComboBox. Wenn in der Combobox etwas eingetragen wird, soll eine Suche über einen Webservice getriggert werden und die Rückgabewerte sollen dann im Autocomplete dargestellt werden. Je mehr der User eingibt, um so spezifischer soll die Auswahlmöglichkeit werden.
Um die Funktion zu testen habe ich das Ganze erstmal versucht ohne den Webservice aufzubauen. Hier der Ausschnitt aus meinem Coding:

$cbxSearch                       = New-Object system.Windows.Forms.ComboBox
$cbxSearch.text                  = "comboBox"  
$cbxSearch.width                 = 376
$cbxSearch.height                = 36
$cbxSearch.location              = New-Object System.Drawing.Point(8,11)
$cbxSearch.Font                  = 'Microsoft Sans Serif,10'  


$cbxSearch.AutoCompleteSource = 'ListItems'  
$cbxSearch.AutoCompleteMode = 'Suggest'  
$cbxSearch.Items.AddRange(@('Term add 1', 'Term add 2', 'Term more 1', 'Esp1', 'Esp2', 'Ssp1'))  

$cbxSearch.Add_TextChanged({ 

if ($cbxSearch.text.Length -ge 2) {
    $cbxSearch.Items.AddRange(@('Esp3','Esp4','Esp5'))  
}

 })

Ich würde jetzt erwarten, dass bei der Eingabe von "Esp" dann "Esp3", "Esp4" und "Esp5" in der Suggest-Liste mit angezeigt werden. Das passiert aber leider nicht. Gibt es da eine Möglichkeit zum Refresh oder wie gehe ich da am besten vor?

Vielen Dank und beste Grüße

Content-ID: 545793

Url: https://administrator.de/contentid/545793

Ausgedruckt am: 21.11.2024 um 17:11 Uhr

142970
Lösung 142970 11.02.2020 aktualisiert um 09:52:16 Uhr
Goto Top
Zitat von @BirdyB:
Gibt es da eine Möglichkeit zum Refresh oder wie gehe ich da am besten vor?
Im Event nochmals aufrufen
$cbxSearch.AutoCompleteSource = [System.Windows.Forms.AutoCompleteSource]::ListItems
dann aktualisiert sich die AutoComplete-Liste.
Die alten Form-Controls sind aber sehr begrenzt was das dynamische Verhalten betrifft. Besser sind die neuen WPF-Controls darauf vorbereitet.
BirdyB
BirdyB 11.02.2020 um 17:40:37 Uhr
Goto Top
Super, vielen Dank für die Unterstützung!