Powershell Load-ComboBox 与来自 csv 的所有成员

Powershell Load-ComboBox with all members from csv

我正在尝试查找 .csv,return 所有唯一成员并更新组合框。

Services.csv 例如:

ServerName         Service         Description
Server1            Spooler         Print Spooler
Server2            Spooler1        Print Spooler1
Server1            Spooler1        Print Spooler1

下面的 powershell 脚本 return 唯一成员正确。

$Serverslist = Import-Csv "C:\Temp\Scripts\Services.csv" | Select-Object -Property $_.ServerName | select -Unique ServerName | Sort ServerName | Format-Table -HideTableHeaders | Out-String

当我尝试使用以下代码更新组合框时,它只显示第一个成员。

ForEach ($Server in $Serverslist) { Load-ComboBox -ComboBox $comboboxServer -Items $Server -Append}

如果我删除下面的内容,它会使用正确的成员更新组合框,但有一个 @{Servername=blablabla}

Format-Table -HideTableHeaders | Out-String

有没有更好的方法来完成这个?

你试过用Select -ExpandProperty Servername代替Format-Table吗?

我为多个 combo_box 创建了一个 .csv 文件,但你只能有一个项目,my.csv 看起来像:

Item1,Item2,Item3,Item4
House,Blue,Casa,Azul
Car,Red,Carro,Rojo

然后在我的 FORM 文件的末尾:

function funlist1() {
    #SET THE LOCATION OF YOUR FILE
    Set-Location **C:\PATH1\PATH2**

    #LOAD YOUR FILE
    $file = Import-Csv ".\**YOUR_FILE**.csv"
        $List = @()
        foreach ($line in $file) {
                $text=$line.Item1+": "+$line.Item2
                $List+=$text
        }
    return $List
}

#THIS WILL LOAD THE ARRAY TO THE COMBO_BOX
funlist1 | ForEach-Object {[void] $COMBO_BOX_NAME.Items.Add($_)}