WebBrower 控件拖动问题

albert528108 2010-03-20 11:10:50
WebBrower 控件没有AllowDrop属性,怎样才能接受外部拖动过来的数据?
...全文
105 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
albert528108 2010-03-22
  • 打赏
  • 举报
回复
已经解决了,现结贴
albert528108 2010-03-22
  • 打赏
  • 举报
回复
已经实现了IDocHostUIHandler和IOleDropTarget接口,也能正常调用GetDropTarget函数,代码如下:

public int GetDropTarget(Interop.IOleDropTarget pDropTarget, out Interop.IOleDropTarget ppDropTarget)
{
if (_dropTarget == null)
{
MyWebBrower htmlEditor = hostControl as MyWebBrower;

if (htmlEditor != null)
{
DataObjectConverter dataObjectConverter = htmlEditor.DataObjectConverter;
if (dataObjectConverter != null)
_dropTarget = new MshtmlSite.DropTarget(htmlEditor,dataObjectConverter, pDropTarget);
}
}
ppDropTarget = _dropTarget;
if (_dropTarget != null)
return 0;
return -2147467263;
}


但WebBrower控件拖动事件OleDragEnter不会触发,但用其它控件,如TextBox就没问题
albert528108 2010-03-22
  • 打赏
  • 举报
回复
这个属性只能允许拖动文件类型的,如果是自定义的类型就没效果
qlzf11140820 2010-03-20
  • 打赏
  • 举报
回复
WebBrowser.AllowWebBrowserDrop 属性 试试
1 、如何替换默认的类厂? 2 、如何让 COM 组件支持 Web 事件? 3 、如何动态创建要求 License 的 ActiveX 控件? 4 、如何在 Web 页面上生成基于 XML 的树形菜单? 5 、如何在 Web 页面上创建动态表格? 6 、如何为 Win32 服务程序提供事件源消息文件? 7 、如何创建单实例(静态) COM 组件? 8 、如何在 Delphi 6 及以上版本中使用可变常量(类型常量)? 9 、几个有用的 ANSI C 和 VC++ 预定义宏 10 、如何在自己的程序中使用脚本语言? 11 、如何在基于 CHtmlView 的程序中使用 HTML 事件映射? 12 、如何得到 Web 页面中的 COM 组件的原始接口? 13 、如何生成全球唯一标识( UID )? 14 、如何重写 MFC 的缺省控件容器( IOleContainer )? 15 、如何重写 WebBroswer 控件的缺省安全处理功能? 16 、如何重写 WebBroswer 控件的缺省下载管理器? 17 、如何定制 IE 或 WebBroswer 控件的缺省打印和打印预览框? 18 、如何扩展 IE 或 WebBroswer 控件提供的文档对象模型( DOM )? 19 、如何给 WebBroswer 控件的扩展文档对象(文档 .external )提供事件能力 ? 20 、如何打开流中的 HTML 文档? 21 、如何使 Web 页面中的对象可以拖动? 22 、如何把 Web 页面中用到的图像等外部文件嵌入 DLL 或 Exe ? 23 、如何使用 #import 指令从文件定位特定类型库资源 ID ? 24 、如何让你的 MFC 类实现 IDispatch 接口? 25 、如何自行管理 IE 缓存目录里的内容? 26 、 Windows Mobile 里如何使用 WebBrowser 控件? 27 、为什么在 Windows Mobile 里无法使用宿主在 exe 里的 COM 组件? 28 、如何扩展 IE 的协议,使其支持自定义的协议?

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧