首页 > 解决方案 > 如何允许 Ctrl+A 在 Windows 窗体文本框中全选(powershell)

问题描述

我正在编写一个带有 Windows 窗体 GUI 的 .ps1 脚本。当我从 Powershell ISE 运行它时,它允许使用 Ctrl+A 在文本框中“全选”。但是,在 ISE 之外运行 .ps1 时,CTRL+A 的操作什么也不做。

知道我可以在文本框上更改哪些设置以允许 Ctrl+A 吗?我能找到的关于这个主题的唯一线程是用 C 等其他语言编写的。

目前我有什么:

$textBox = New-Object System.Windows.Forms.TextBox
$textBox.Location = New-Object System.Drawing.Point(10,40)
$textBox.Size = New-Object System.Drawing.Size(110,20)
$textbox.Add_KeyDown({
    if ($_.KeyCode -eq "Enter") {$okButton.PerformClick()}
    })
**$textbox.acceptstab = $true
$textbox.shortcutsenabled = $True**
$form.Controls.Add($textBox)

标签: formspowershelltextboxctrl

解决方案


您可以手动编写 Ctrl+A 事件来选择文本框内容:

$textbox.Add_KeyDown({
  if (($_.Control) -and ($_.KeyCode -eq 'A')) {
     $textbox.SelectAll()
  }
})

推荐阅读