首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Select-Object输出索引

使用Select-Object输出索引
EN

Stack Overflow用户
提问于 2017-03-06 19:26:21
回答 2查看 1.6K关注 0票数 0

使用LINQ Select方法的重载之一,我可以构造一个新类型,并将该项的索引作为其中一个属性:

代码语言:javascript
复制
var lst = new List<int>() {1,1,2,3,5};
var selected = lst.Select((x,index) => new {
    number = x,
    index
});

是否还可以使用Select-Object将当前索引作为输出对象的属性之一包括在内

代码语言:javascript
复制
# $selected.Visual is a WPF Grid
$selected.Visual.ColumnDefinitions | Select-Object -Property Width, MinWidth, MaxWidth, ActualWidth
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-03-06 19:31:35

我怀疑您是否可以访问索引,但您可以将输出通过管道传输到Foreach-Object cmdlet,然后自己计算索引:

代码语言:javascript
复制
$selected.Visual.ColumnDefinitions | ForEach-Object -Begin {$idx = 0} -Process {
    $_ | Select-Object Width, MinWidth, MaxWidth, ActualWidt, @{l='index'; e={$idx}}
    $idx += 1
}
票数 2
EN

Stack Overflow用户

发布于 2019-01-31 18:56:52

另一种选择是使用自动递增的变量,因此不需要循环:

代码语言:javascript
复制
$index = 0
$selected.Visual.ColumnDefinitions | Select-Object -Property @{n="index";e={(++$Script:index)}}, Width, MinWidth, MaxWidth, ActualWidt

脚本范围修饰符是更新index的值所必需的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42624398

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档