1
当窗体大小调整时,我需要动态调整窗体对象的大小。用户将拖放表单的边缘来调整其大小。我一直在寻找正确的语法来管理PowerShell中的窗体大小调整事件,但一直不成功。PowerShell窗体调整大小事件
有人能告诉我为什么resizeEnd
不能在窗体上工作吗?另外,处理resize事件的正确语法是什么?
这是我试图,但我一直得到错误:
[void] [System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")
[void] [System.Reflection.Assembly]::LoadWithPartialName("System.Drawing")
$form = New-Object System.Windows.Forms.Form
$form.Size = New-Object System.Drawing.Size(1066,518)
$form.KeyPreview = $true
$form.StartPosition = "centerscreen"
$form.BackColor = "MidnightBlue"
$form.Add_KeyDown({
if($_.KeyCode -eq "Escape") {
$form.Close()
}
})
$form.Text = "Dialog Box 5.1"
$form.Icon = [System.Drawing.Icon]::ExtractAssociatedIcon($PSHOME + "\powershell_ise.exe")
$form.MinimumSize = New-Object System.Drawing.Size(1066,525)
#$form.SizeChanged({ $errorBox1.AppendText("resize") })
#$form.Resize({ Write-Host "resize" })
#$form.ClientSizeChanged({ Write-Host "size" })
$form.ResizeEnd({ Write-Host "resize" })
#$form.SizeChanged({ Write-Host "size" })
#$form.ControlAdded({ Write-Host "event" })
#$form.AutoSizeMode = New-Object System.Windows.Forms.AutoSizeMode
#$form.AutoSizeMode = "GrowAndShrink"
#$form.OnDragDrop({ Write-Host "drop" })
$form.ShowDialog() | Out-Null
基本上,我是想说,“如果窗体大小写主机的形式调整”。
这里有一个[链接](https://foxdeploy.com/series/learning-gui-toolmaking-series/)到(IMO)使用PowerShell更好地创建GUI。 – TheMadTechnician
感谢您的链接,但除了GUI中的基础课程之外,我完全没有看到它与这个问题的相关性。我已经浏览了关于.Net在页面上的子链接,并没有谈到调整事件处理程序的大小。 – CuriousOne