首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Powershell寄存器WPF事件

Powershell寄存器WPF事件
EN

Stack Overflow用户
提问于 2022-05-15 19:41:35
回答 1查看 86关注 0票数 1

我正试图建立一个WPF gui,在那里我有两个无线电按钮列表盒。一个按钮加载单选按钮:

代码语言:javascript
运行
复制
function mybuttonclick {
    $List = get-content "list.txt"
    foreach ($item in $list) {
        $tmpradio = New-Object System.Windows.Controls.RadioButton
        $tmpradio.content = "$item"
        $tmpradio.groupname = "MyList"
        Register-ObjectEvent -InputObject $tmpradio -EventName Checked -Action { write-host "test"}
        $MyListbox.AddChild($tmpradio)
    }
}

然而,我没有得到任何回报,这是一个范围问题,对象在退出函数后被删除吗?

有什么解决方案吗?这样我就可以选择一个动作或另一个动作,群名是"MyList“,或者例如"MyOtherList”。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-21 12:54:31

看来我会再一次回答我自己的问题。

说实话就像我想的那么简单.吉姆·莫伊尔解释说,我适应了我的处境。

代码语言:javascript
运行
复制
function mybuttonclick {
    $List = get-content "list.txt"
    foreach ($item in $list) {
        $tmpradio = New-Object System.Windows.Controls.RadioButton
        $tmpradio.content = "$item"
        $tmpradio.groupname = "MyList"
        [System.Windows.RoutedEventHandler]$checkhandler = {write-host 'Test'}
        $tmpradio.AddHandler([System.Windows.Controls.RadioButton]::CheckedEvent, $checkhandler)
        $MyListbox.AddChild($tmpradio)
    }
}

为了简单起见,我只需像往常一样创建我的单选按钮,然后创建一个处理程序scriptblock,它只是在x事件触发时执行的代码。

最后,我将处理程序添加到CheckedEvent上的无线电按钮中。

我可以通过打开调试器找到事件名,输入以下命令:

代码语言:javascript
运行
复制
[System.Windows.Controls.RadioButton]::

然后开始为自动完成选项卡。

来源:https://www.youtube.com/watch?v=s6A9KuEM324

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72251656

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档