PowerShell - 递增左手变量

PowerShell - Incrementing Left Hand Variable

正在尝试将 .csv 单元格内容导入 PowerShell 表单 Combo/Drop 当我在每个变量编号($DropDownBox1.Text、$DropDownBox2.Text 等中进行硬编码时工作的向下框但希望让它更智能一点并循环遍历每个实例并适当导入。

是否可以修改左手赋值以使其相应地递增?

$i=0
$x=1
Foreach($User in $ISDept)
{
    $DropDownBox[$x].Text = Import-Csv -Path $File | Select-object -Index ($i) |% {$_.Status}
    $i++
    $x++
}

使用上面的代码我得到错误:

"Unable to index into an object of type System.Windows.Forms.ComboBox."

提前致谢。

我假设您有一些代码可以创建所有下拉框,名称与您描述的一样。在这种情况下,您需要使用动态变量和 Get-Variable 命令。试试这个

$i=0
$x=1
Foreach($User in $ISDept)
{
    $DropDownBox = Get-Variable -Name ('DropDownBox' + ([string]$x)) | Select -Expand Value
    $DropDownBox.Text = Import-Csv -Path $File | Select-object -Index ($i) |% {$_.Status}
    $i++
    $x++
}