繁体   English   中英

拖放到托管的浏览器控件

[英]Drag and Drop to a hosted Browser control

我有一个在.NET 2上编写的WinForms程序,它承载一个webbrowser控件并从一个已知的服务器呈现asp.net页面。

我希望能够将我的winforms应用程序中的树视图中的树节点拖动到托管网页中的特定位置,并让它在那里触发javascript事件。 目前,我可以实现IDocHostUIHandler接口并在浏览器控件上获取drag \\ drop事件,然后在控件上调用Navigate("javascript:fire_event(...)")以在页面上执行脚本。 但是,我希望这只有在我将数据放在页面的特定部分时才能工作。

我想,一个解决方案就是咬紧牙关并以activex控件的形式编写一个自定义浏览器插件,将其嵌入到我想要删除的位置,并让它实现所需的拖放接口。

那会有用吗? 有更清洁的方法吗? 我可以利用浏览器控件托管在我的应用程序中并提供更多级别的交互吗?

看一下Yahoo的BrowserPlus项目。

看起来他们已经构建了一个工具包,因此您不必自己编写浏览器插件。

如果您可以找到您感兴趣的页面部分的屏幕位置,则可以在收到放置事件时将其与鼠标的位置进行比较。 如果你能从DOM或诸如此类的东西中获取信息,我不确定这是多么实用。

作为替代方案,您可以使用javascript在页面的位上实现鼠标事件吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM