2017-03-06 9 views
0

使用LINQ Select方法的重載之一,我可以構建一種新型的與該項目的索引的屬性之一:產出指數

var lst = new List<int>() {1,1,2,3,5}; 
var selected = lst.Select((x,index) => new { 
    number = x, 
    index 
}); 

是否有可能也將當前索引作爲輸出對象的屬性之一使用Select-Object

# $selected.Visual is a WPF Grid 
$selected.Visual.ColumnDefinitions | Select-Object -Property Width, MinWidth, MaxWidth, ActualWidth 

回答

1

我懷疑你可以訪問索引,但可以通過管道輸出到Foreach-Object cmdlet,並計算出自己的指數:

$selected.Visual.ColumnDefinitions | ForEach-Object -Begin {$idx = 0} -Process { 
    $_ | Select-Object Width, MinWidth, MaxWidth, ActualWidt, @{l='index'; e={$idx}} 
    $idx += 1 
}