Powershell Load-ComboBox与csv的所有成员

时间:2015-03-16 00:13:08

标签: powershell csv combobox

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

Services.csv例如:

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

以下powershell脚本正确返回唯一成员。

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

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

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

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

Format-Table -HideTableHeaders | Out-String

有没有更好的方法来实现这一目标?

2 个答案:

答案 0 :(得分:0)

您是否尝试过Select -ExpandProperty Servername而不是Format-Table

答案 1 :(得分:0)

我为多个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($_)}