【发布时间】:2010-08-05 17:53:31
【问题描述】:
我有一个 Windows 窗体网络浏览器 (Windows.Forms.WebBrowser) 我想在它上面捕获拖放事件。
我没有看到任何可以挂钩的拖放事件?它只有 DoDragDrop()
您能指导我如何捕获拖放事件吗?我想在托管它的父控件中处理这些事件。
谢谢!
【问题讨论】:
我有一个 Windows 窗体网络浏览器 (Windows.Forms.WebBrowser) 我想在它上面捕获拖放事件。
我没有看到任何可以挂钩的拖放事件?它只有 DoDragDrop()
您能指导我如何捕获拖放事件吗?我想在托管它的父控件中处理这些事件。
谢谢!
【问题讨论】:
您可以通过“AllowWebBrowserDrop”属性在 WebBrowser 控件上启用拖放,即
webBrowser1.AllowWebBrowserDrop = true;
然后你可以拦截“Navigating”事件来读取被丢弃的URL:
private void webBrowser1_Navigating(object sender, WebBrowserNavigatingEventArgs e)
{
MessageBox.Show(e.Url.ToString());
}
【讨论】:
要取消导航事件,请执行以下操作:
e.Cancel = true;
这应该可以解决问题。
【讨论】: