如何从IDragData获取OnDrageEnter事件中的文件内容?

问题描述 投票:0回答:1

在CefSharp的winforms实现中,我实现了IDragHandler。

在OnDragEnter事件中,我想获取文件内容。

目前我正在使用

Dim st As IO.Stream = Nothing
Dim i As Integer = dragData.GetFileContents(st)

没有数据写入流。

您是否可以从正在从外部(例如桌面)拖动到浏览器的文件中获取文件内容?

我认为这是一个上游问题,但是,如果我拖动一个选定的Outlook项目,dragData没有文件或文件名,但IsFragment为true,FragmentText包含类似主题的电子邮件的一般信息。这是一个上游问题吧?

cefsharp
1个回答
1
投票

将我的评论添加到答案中,请参阅Issue 322605: Drag and Drop support for E-Mails from Microsoft Outlook

为了完成,我想补充一下我如何解决这个问题,直到Chromium赶上来。我在WPF窗口中托管我的CEFSharp winforms实例。当CefSharp OnDragEnter事件触发时,我在鼠标指针的正下方打开一个几乎透明的弹出窗口。这个弹出窗口启用了WPF的拖动事件,一旦它们触发并给我拖动的内容我关闭弹出窗口。这有点但很棘手,因为一旦弹出消失,CefSharp的OnDragEnter事件就会触发,但除此之外我还能找出被拖动的内容。

© www.soinside.com 2019 - 2024. All rights reserved.