Ben*_*Ben 3 wpf powershell wpf-controls
有人能指出我在Powershell中处理WPF UI事件的一些文档的正确方向吗?
我想知道如何在更改CheckBox或单选按钮时调用函数.
干杯!
本
考虑到WPF和PowerShell,请参阅 Bernd的PowerShell的WPF Linkcollection.你会发现许多有用的链接,可以帮助你.
考虑到你的问题,只需使用模式
$control.Add_<someevent>({ what to do })
Run Code Online (Sandbox Code Playgroud)
例如,someevent可以是Click一个Button:
$button.Add_Click({ $global:clicked = $true })
Run Code Online (Sandbox Code Playgroud)
传入处理事件的scriptblock.
晚会(超过4年).专门针对jpierson的评论.
但是,如果有人发现这篇文章,就像我一样,通过谷歌搜索PowerShell WPF事件处理,想要获得发件人控件(发件人)和事件Args(e),这里是如何...
C#版本(非特定模板)
private void Handler(object sender, SomeEventArgs e)
{
//do something with sender and/or e...
}
Run Code Online (Sandbox Code Playgroud)
PowerShell版本
$WPFControl.Add_Handler({
$sender = $args[0]
$e = $args[1]
#do something with sender and/or e...
})
Run Code Online (Sandbox Code Playgroud)
并在特定的MouseWheelHandler事件处理程序上
C#版本(MouseWheelHandler事件已绑定到控件的位置)
private void ScrollViewer_PreviewMouseWheel(object sender, MouseWheelEventArgs e)
{
ScrollViewer scv = (ScrollViewer)sender;
//do something with sender and/or e...
}
Run Code Online (Sandbox Code Playgroud)
PowerShell版本
$ScrollViewer.Add_PreviewMouseWheel({
$sender = [System.Windows.Controls.ScrollViewer]$args[0]
$e = [System.Windows.Input.MouseWheelEventArgs]$args[1]
#do something with sender and/or e...
})
Run Code Online (Sandbox Code Playgroud)
在PowerShell中,要获取发件人和事件参数的类型,请使用以下命令
$ScrollViewer.Add_PreviewMouseWheel({
Write-Host $args[0]
Write-Host $args[1]
})
Run Code Online (Sandbox Code Playgroud)
哪个(在上面的例子中)会给你......
System.Windows.Controls.ScrollViewer
System.Windows.Input.MouseWheelEventArgs
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4011 次 |
| 最近记录: |