C# WebBrowser 拖动文件问题

我想将桌面的多个文件一次性拖入到WebBrowser控件内;
拖入后根据htmlEditor1_HtmlNavigation事件 的e.URL获取桌面文件的文件地址;
最后将文件地址显示在程序中的textbox中;
但是当我拖动多个文件时 只能显示最后一个文件的文件地址,前几个获取不到;
我该如何一次获取所有拖入WebBrowser控件内的文件地址?

5个回答

因为你用的是歪打正着的办法
webbrowser支持拖放文件进行跳转的特性,如果是多个文件,它跳转到最后一个文件地址上,所以你用e.url只能得到最后一个地址。
换言之,这个事件执行的时候,其它文件早就被忽略了。
要想真的获取所有文件,必须子类化webbrowser,拦截WM_DROPFILES

xuliyuan173
xuliyuan173 http://ask.csdn.net/questions/186303 求大神指点
接近 5 年之前 回复
caozhy
每个人都有一个梦才不会孤单的说话就有天堂 回复xuliyuan173: 如需要一些代码,请先采纳本问题,并且开一个新问题,我将在新问题中给你代码
接近 5 年之前 回复
xuliyuan173
xuliyuan173 webbrowser 我没有研究过,请问有没有相关的例子或资料我可以查阅
接近 5 年之前 回复

![图片说明](https://img-ask.csdn.net/upload/201504/29/1430286633_601909.jpg)图片说明

为什么要用WebBrowser呢?
在窗体的DragDrop事件里写
textBox.Text = e.FileName;
不就完了吗?

用DragDrop的GetData
看看这个:
http://www.cr173.com/html/17438_1.html

如果你想让用户把文件拖动到一个区域的话,新建一个Panel然后再用Panel的DragDrop事件的的GetData

xuliyuan173
xuliyuan173 应为WebBrowser 是显示内容的区域。要显示HTML的内容。
接近 5 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问