PowerShell中的PropertyGrid不';不显示所有属性

PowerShell中的PropertyGrid不';不显示所有属性,powershell,propertygrid,Powershell,Propertygrid,我正在钻研使用Windows窗体使用PowerShell制作GUI,我一直在使用非常有用且外观简洁的PropertyGrid对象,但我不确定它是否喜欢在PowerShell中玩得很好。我尤其对Active Directory cmdlet有一些问题 我想在PropertyGrid中显示一个广告用户对象。出于测试目的,我创建了以下简单函数: Function Show-Object { $Form = New-Object "System.Windows.Forms.Form" $

我正在钻研使用Windows窗体使用PowerShell制作GUI,我一直在使用非常有用且外观简洁的PropertyGrid对象,但我不确定它是否喜欢在PowerShell中玩得很好。我尤其对Active Directory cmdlet有一些问题

我想在PropertyGrid中显示一个广告用户对象。出于测试目的,我创建了以下简单函数:

Function Show-Object
{
    $Form = New-Object "System.Windows.Forms.Form"
    $Form.Size = New-Object System.Drawing.Size @(600,600)
    $PropertyGrid = New-Object "System.Windows.Forms.PropertyGrid"
    $PropertyGrid.Dock = [System.Windows.Forms.DockStyle]::Fill
    $Form.Text = "$args"
    $PropertyGrid.SelectedObject = $args[0]
    $Form.Controls.Add($PropertyGrid)
    $Form.TopMost = $true
    $Form.ShowDialog()
}
然后我就跑

PS> Show-Object (Get-ADUser Testing)
它显示的正是我期望它显示的内容。另一方面,当我运行这个

PS> Show-Object (Get-ADUser Testing -Properties *)

结果PropertyGrid中的PropertyCount上升到我期望的数值,但其他属性仍然没有出现。实际上,我不想像本例中那样显示所有属性,但添加特定属性似乎也不起作用。有没有一种方法可以让它按我喜欢的方式工作,或者我需要寻找一种替代的解决方案?

不知道你打算用
显示对象
做什么,但是a做了一个非常好的函数,它做的事情与你的
显示对象
做的事情相同。它叫。也许如果你看到脚本是如何工作的,你就能修复你的脚本了。例如,我将
Out GridList
函数复制到一个测试脚本中,并在同一脚本中调用该函数

function Out-GridList {
...
}
Get-ADUser Testing -Properties * | Out-GridList