从this answer的这段代码开始:
stringList.ForEach(item => listBox1.Items.Add(item));
我已将自己的变量放入行中,如下所示:
$listAgencies = $Window.FindName('listAgencies')
$arr_listAgencies = ($hash_AgencyOffices['ADMIN1','ADMIN2'].Keys | ForEach-Object ToString)
$arr_listAgencies.ForEach(item => $listAgencies.Items.Add(item))
我已确认$arr_listAgencies
是ListBox $listAgencies
中我需要的值的列表,但我猜测我完全忽略了item
的重要性最后一行:(item => $listAgencies.Items.Add(item))
。
当我运行此PS时,请告知我缺少')'在方法调用中,有一个意外令牌'项目'在表达或陈述中。
item
应该是$._
,管道变量?我认为可能是它并尝试过,但错误基本相同。
我错过了什么?
答案 0 :(得分:2)
在item => {code}
中,=>
运算符在PowerShell中不可用。它是C#的lambda表达式运算符。
为了达到你想要的效果,试试这个
$arr_listAgencies | ForEach-Object {
$listAgencies.Items.Add($_) | Out-Null
}