繁体   English   中英

PowerShell 中的 Windows 窗体事件 - PowerShell 中的 Sender 和 EventArgs

[英]Windows Forms Events in PowerShell - Sender and EventArgs in PowerShell

如何在 PowerShell 中正确处理 Windows 窗体控件的事件并使用SenderEventArgs

在 PowerShell 中遵循 C# 代码的等价物是什么?

button.MouseClick += (sender, e) => {
    MessageBox.Show($"{((Control)sender).Name} \n {e.Location}");
};

要在 PowerShell 中正确处理 Windows 窗体控件的事件并利用SenderEventArgs您可以使用以下任一选项:

  • 为脚本时钟定义sendere参数
  • 使用$this$_变量

为脚本块定义sendere参数

就像 C# 中的 lambda 事件处理程序一样,您可以为脚本块定义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)")
})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM