powershell - 将文件拖动到 Add_DragEnter 事件的文本框时禁用“拒绝访问”图标
问题描述
我有一些代码允许我将文件资源管理器中的文件拖到表单上的文本框中。代码工作正常。但是,即使文件可以毫无问题地拖到那里,文本框上也会出现“禁止访问”图标。有什么方法可以阻止图标出现吗?
为澄清起见,“禁止访问”图标是一个带有从左上角到右下角的对角线的圆圈。(从 10 点到 4 点,对于那些记得时钟是圆的并且有指针的人)
编辑:添加了澄清代码。
文本框代码:
$tbxPath = New-Object System.Windows.Forms.TextBox
$tbxPath.Location = '10,30'
$tbxPath.Size = '370,20'
$tbxPath.AllowDrop = $true
$tbxPath.Add_DragOver({$_.Effect = [System.Windows.Forms.DragDropEffects]::Copy})
$tbxPath.Add_DragEnter({ GetFirstFile($_)})
与获取文件路径相关的代码(不确定它是否与问题有任何联系,但无论如何我都会包含它。对于它的价值,我可以使用 Add_DragOver 或 Add_DragEnter 来调用我的 GetFirstFile 函数。)
function GetFirstFile($Object){
$tbxPath.Clear()
foreach ($File in $Object.Data.GetFileDropList()){
$tbxPath.Tag = Split-Path $File -Parent
$tbxPath.Text = Split-Path $File -Leaf
$lblInstructions.Text = 'Click the open button'
$lblInstructions.ForeColor = 'Black'
$cbOpen.Focus()
break
}
}
解决方案
推荐阅读
- javascript - 按钮点击和 2 个网页
- rust - Rust 疯狂指针 ref
- python - Ultra96 或 Pynq-Z2 套件?
- android - 试图在 android 中创建 spinner.OnItemSelectedListener 事件
- sed - sed 替换或删除字符串
- laravel - 如何自定义重置密码链接
- javascript - WordPress 编辑器在复制和粘贴时如何保留文本格式?
- angular - 处理多个 Observable 和函数
- unity3d - 我的点击事件,鼠标点击事件无法识别正确的游戏对象
- node.js - 带有 Lambda 的 Dialogflow - Webhook 调用失败。错误:502 错误网关