我想将桌面的多个文件一次性拖入到WebBrowser控件内;
拖入后根据htmlEditor1_HtmlNavigation事件 的e.URL获取桌面文件的文件地址;
最后将文件地址显示在程序中的textbox中;
但是当我拖动多个文件时 只能显示最后一个文件的文件地址,前几个获取不到;
我该如何一次获取所有拖入WebBrowser控件内的文件地址?
因为你用的是歪打正着的办法
webbrowser支持拖放文件进行跳转的特性,如果是多个文件,它跳转到最后一个文件地址上,所以你用e.url只能得到最后一个地址。
换言之,这个事件执行的时候,其它文件早就被忽略了。
要想真的获取所有文件,必须子类化webbrowser,拦截WM_DROPFILES
为什么要用WebBrowser呢?
在窗体的DragDrop事件里写
textBox.Text = e.FileName;
不就完了吗?
用DragDrop的GetData
看看这个:
http://www.cr173.com/html/17438_1.html
如果你想让用户把文件拖动到一个区域的话,新建一个Panel然后再用Panel的DragDrop事件的的GetData