Ctrl+a to select all in listview powershell
Ctrl+a to select all in listview powershell
我正在尝试在列表视图上使用 Ctrl+A,默认情况下它不是一个选项。使用 keypress
事件复制此行为无效。
Keypress
适用于单键按下事件,但当我将它与组合键一起使用时,它不起作用。
为了进行测试,我尝试了以下操作:
$droper.Add_keypress({if ($_.KeyCode -Eq 17) {
write-host "ctrl a pressed"}})
以上成功
$droper.Add_keypress({if ($_.KeyCode -Eq (17 -and 65) ) {
write-host "ctrl a pressed"}})
这行不通
$droper.Add_keypress({if (($_.KeyCode -Eq 17) -and ($_.KeyCode -Eq 65) ) {
write-host "ctrl a pressed"}})
这也行不通
非常感谢任何帮助!!
使用事件中的参数,特别是 $e
类型的 KeyEventArgs:
$droper.Add_keypress({
param($sender, $e)
if ($e.control) { write-host "ctrl a pressed"}
})
请注意,$e
具有布尔值的 Alt、Control 和 Shift(以及其他)成员变量。
然后你可以这样做来检查是否按下了 CTRL + A:
if($_.KeyCode -eq "A" -and $e.Control)
{
}
我正在尝试在列表视图上使用 Ctrl+A,默认情况下它不是一个选项。使用 keypress
事件复制此行为无效。
Keypress
适用于单键按下事件,但当我将它与组合键一起使用时,它不起作用。
为了进行测试,我尝试了以下操作:
$droper.Add_keypress({if ($_.KeyCode -Eq 17) {
write-host "ctrl a pressed"}})
以上成功
$droper.Add_keypress({if ($_.KeyCode -Eq (17 -and 65) ) {
write-host "ctrl a pressed"}})
这行不通
$droper.Add_keypress({if (($_.KeyCode -Eq 17) -and ($_.KeyCode -Eq 65) ) {
write-host "ctrl a pressed"}})
这也行不通 非常感谢任何帮助!!
使用事件中的参数,特别是 $e
类型的 KeyEventArgs:
$droper.Add_keypress({
param($sender, $e)
if ($e.control) { write-host "ctrl a pressed"}
})
请注意,$e
具有布尔值的 Alt、Control 和 Shift(以及其他)成员变量。
然后你可以这样做来检查是否按下了 CTRL + A:
if($_.KeyCode -eq "A" -and $e.Control)
{
}