我有下面的代碼窗體上的按鈕:爲什麼打電話時不PowerShell的形式關閉功能關閉後
$BrowseButton = New-Object System.Windows.Forms.Button
$BrowseButton.Location = New-Object System.Drawing.Size(97,75)
$BrowseButton.Size = New-Object System.Drawing.Size(75,23)
$BrowseButton.Text = "Browse"
$BrowseButton.Add_Click({$pathForm.Close();getPath})
$pathForm.Controls.Add($BrowseButton)
我的目標是爲$ pathForm關閉和下面的函數被調用:
Function getPath {
$app = new-object -com Shell.Application
$folder = $app.BrowseForFolder(0, "Select Folder", 0, "C:\")
if ($folder.Self.Path -ne "") {$selected = "You selected " + $folder.Self.Path}
}
沒有對$ getPath的調用,表單將按照預期關閉。但是,當我將「getPath」添加到點擊時,表單不會關閉,並且BrowseForFolder shell應用程序將在其後面打開。什麼導致它保持開放?
我是新來的powershell和一般的編碼,所以可能會有一個明顯的錯誤在我的代碼。謝謝!
作爲一個簡單的解決方案,我從我的函數中刪除了最頂層的屬性,只是讓這個窗口在背景中冷卻,直到getPath函數完成。 – Blackjack00