0
我通過Powershell創建窗體窗體,用戶可以在其中搜索註冊到某個人的計算機,或搜索某個人的註冊計算機。註冊用戶存儲在description
字段中,計算機名稱爲name
字段。 $SearchIn
保持對搜索的值,$field
表示字段進行搜索。目錄搜索到數組以填充Windows窗體數據網格
我能得到我想要的結果通過控制檯,但我嘗試的結果推到一個Windows窗體上的數據網格視圖。下面腳本中的數據網格稱爲$dataGrid1
。我在下面試圖將目錄服務搜索推送到一個數組,然後將datagrid數據源設置爲一個數組。我以爲因爲$objectComputer
是一個對象而不是數組,我必須使用New-Object System.Collections.ArrayList
創建一個數組,並使用addrange
方法將其設置爲$objComputer
對象。
最終,無論我嘗試的是什麼,我都會得到一個空白的datagrid視圖。有人能指引我朝着正確的方向嗎?
Function Get-Info
{
param($SearchIn,$Field)
if ($field -eq "Name"){
$filter="name=*$SearchIn*"
}
else
{
$filter="description=*$SearchIn*"
}
$strCategory = 「computer」
$objDomain = New-Object System.DirectoryServices.DirectoryEntry
$objSearcher = New-Object System.DirectoryServices.DirectorySearcher
$objSearcher.SearchRoot = $objDomain
$objSearcher.Filter = $filter
$colResults = $objSearcher.FindAll()
[email protected]()
foreach ($objResult in $colResults)
{
$objComputer+=($objResult.Properties.item("Name"), $objResult.Properties.item("Description"))}
$array=New-Object System.Collections.ArrayList($null)
$array=.addrange($objComputer)
$dataGrid1.DataSource = $array
$fComputerSearch.refresh()
}#End Get-Info