Я пытаюсь заполнить ComboBox2 на основе выбора ComboBox1
Фрагменты кода:
$mySite = (Import-CSV .\mytest.csv | Group-Object Site | foreach-object { $_.group | select -Last 1 | select site })
# $ComboBox1 = "S12"
$thisone = (import-csv .\mytest.csv | % {
$ADSNames = $_.site.split(",")
$Site = $_.Site
$dept = $_.dept
foreach ($name in $ADSNames)
{
if ($name -eq $Combobox1)# $name)
{
}
}
})
####################################################################################################
##### Create Combo Boxes
####################################################################################################
#
$Combobox1 = New-Object System.Windows.Forms.Combobox
$Combobox1.Location = '35,25'
$Combobox1.Size = '50,20'
$Combobox1.Items.AddRange($mySite.site)
$combobox2 = New-Object System.Windows.Forms.Combobox
$combobox2.Location = '130,25'
$combobox2.Size = '50,20'
$combobox2.items.Add($thisone.dept)
$Form.Controls.Add($combobox1)
$Form.Controls.Add($combobox2)
Если я выделю только следующий код:
# $ComboBox1 = "S12"
$thisone = import-csv .\BOP-Sites.csv | % {
$ADSNames = $_.site.split(",")
$Site = $_.Site
$dept = $_.dept
foreach ($name in $ADSNames)
{
if ($name -eq $Combobox1) # $name)
{
write-host $dept
}
}
}
Write-Host показывает только те строки, которые соответствуют ComboBox1 «Выполнить выбранные команды» (см. Ниже)
KK0
DDD
HH1
BB2
VV4
ZZ3
SSS
WW4
QQ5
JJJ
Ниже приведен код для заполнения ComboBox2
$ComboBox1.add_SelectedIndexChanged({
$combobox2.Items.Clear() # Clear the list
$combobox2.Text = $null # Clear the current entry
Switch ($ComboBox1.Text) {
$thisone {
$dept | ForEach {
$combobox2.Items.Add($_)
}
}
К сожалению, я не могу получить ComboBox2 для правильного заполнения