Чтобы правильно обрабатывать события элемента управления Windows Forms в PowerShell и использовать преимущества Sender
и EventArgs
, вы можете использовать одну из следующих опций:
- Определить параметры
sender
и e
для часов сценария
- Используйте
$this
и $_
Переменные
Определение параметров sender
и e
для блока скрипта
Подобно обработчикам лямбда-событий в C #, вы можете определить param($sender,$e)
для блока скрипта:
$button.Add_MouseClick({param($sender,$e)
[System.Windows.Forms.MessageBox]::Show(" $($sender.Name) `n $($e.Location)")
})
Используйте $this
и $_
Переменные
$this
- отправитель события, а $_
- аргументы события:
$button.Add_MouseClick({
[System.Windows.Forms.MessageBox]::Show(" $($this.Name) `n $($_.Location)")
})