在Microsoft Office 365组中的Powershell中创建树视图的问题

时间:2019-06-27 16:24:01

标签: visual-studio powershell

我正在尝试使用Powershell和Visual Studio创建一个通用管理工具,以便我的IT部门可以在一个集中位置执行通用管理任务。我们所做的许多典型任务都涉及Office 365组和用户,因此我试图创建一个树状视图,该视图将每个Office组作为一个节点列出,然后在这些节点内将该组中的每个用户作为子节点列出。我遇到了将这些节点添加到树视图的问题,因为$ treeview.nodes.add不起作用,但是$ treeview.items.add却起作用。 nodes.add给我一个“您不能在空值表达式上调用方法”的错误。

我在树视图上看到的所有文档都通过treeview.nodes.add添加了它们,treeview.items.add将它们添加到树视图中,但是它不像节点那样工作,它只是一个字符串,上面写着“ Treenode :组名。”我已经进行了一些调试,并且我知道用户节点已正确添加到组中。我已经在Visual Studio WPF中创建了所有GUI,所以不确定是否会有所作为。

$OfficeGroups = Get-MsolGroup | Select Displayname,grouptype | sort 
Displayname

ForEach ($group In $OfficeGroups)
{
    $groupTreenode = New-Object -TypeName System.Windows.Forms.TreeNode
    $groupTreeNode.text = $Group.DisplayName
    $groupTreeNode.Name = $group.displayName
    $WPFOffice365Groupstrv.Items.add($groupTreeNode)

}
        ForEach ($treenode In $WPFOffice365Groupstrv.Items)
        {

            $groupUsers = Get-UnifiedGroupLinks $Treenode.Name -LinkType 
            Member

                 ForEach ($user In $groupUsers)
                    {
                        $usernode = New-Object -TypeName 
System.Windows.Forms.TreeNode
                        $usernode.name = $user.Name
                        $usernode.text = $User.name
                        $treenode.items.add($Usernode)

                }
        }

理想情况下,我希望所有组节点在根级别上填充树视图,并在其中希望添加组的每个成员。

0 个答案:

没有答案