【问题标题】:C# Drag and drop to application taskbar iconC#拖放到应用程序任务栏图标
【发布时间】:2010-10-13 17:50:04
【问题描述】:

是否可以将(文件、文本)拖放到 WindowsForms 应用程序 (C#) 的任务栏图标上?

我知道托盘图标没有简单的方法(它涉及使用 Win32 API 和挂钩),但我想知道任务栏是否可以。

【问题讨论】:

    标签: c# drag-and-drop taskbar


    【解决方案1】:

    That's not possible,但是如果您在任务栏中将鼠标悬停在最小化窗口上足够长的时间,窗口管理器会自动恢复最小化窗口。恢复后,您可以访问窗口实现的所有放置目标。

    【讨论】:

      【解决方案2】:

      可能的,至少在 Windows 7 中。请注意,两个较旧答案所指的博客文章来自 2004 年。在 Windows 7 和可能的早期版本中,可以删除文件如果您在放下时按住 shift 键,则在任务栏上的应用程序上。支持此功能的应用程序示例包括 Firefox、Internet Explorer、记事本等。

      为了支持它,你的 exe 需要能够支持命令行myapp.exe <some file path> 并且我相信你需要类似于this SO answer中描述的注册表项

      更新:

      我将此添加到我的一个应用程序中,并且它有效。您不需要注册表项。

      【讨论】:

      • 哇,听起来很有希望!必须调查一下——我一开始就会将你的回复标记为正确。谢谢!
      • 我似乎无法完成这项工作。我的 exe 是单个实例(通过 SO 互斥锁强制执行),每当我运行 app.exe <args> 时,它要么启动并使用参数,要么,如果检测到以前运行的实例,它通过命名管道传递参数。主窗口具有属性ShowInTaskbar="True"。关于缺少什么的任何想法?顺便说一句,该应用程序是 Droplr(适用于 Windows - droplr.com
      • 请注意,这将启动应用程序的新实例;它不会拖入现有实例。
      【解决方案3】:
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多