我想覆盖事件EventArgs
的{{1}}。我无法创建个人事件处理程序,因为我不知道何时应该触发事件WebBrowserDocumentCompleted
。我要添加到DocumentDownloadCompleted
的数据是EventArgs
。
我正在尝试下载页面,但我被重定向到登录页面(仅一次)。我已经设置了一种登录方式,但后来我想重新尝试导航到原始页面,但我不再拥有它了。我可以设置一个全局变量来跟踪每次链接,但有没有办法编辑OriginalPageLink
?我是否还需要修改EventArgs
。
我的代码看起来像
WebBrowserDocumentCompletedEventHandler
提前感谢您提出任何建议。
马
答案 0 :(得分:0)
您只需要锁定WebBrowser.Navigating
事件,即可使用某种集合跟踪导航历史记录。在登录发生之前返回上一页。 Navigate
事件将触发导航并删除以前的网址,因此您需要管理集合或仅限制在您所在州管理的项目。
答案 1 :(得分:0)
你可以使用私人字符串,但我认为你必须重做这个。到目前为止,我看到了这个序列:
1. Navigate to Original page.
2. Presented with login page.
3. Fill in the username / password and then submit.
4. Navigate to Original page.
5. Step 3's process fires a DocumentCompleted event - URL still "login" (loop).
6. Step 4's process fires a DocumentCompleted.
步骤的时间安排无法保证,因此第4步可能会提示您再次登录。
我总是首先进入登录页面然后登录来解决这个问题。一旦触发了DocumentCompleted,我就会转到原始页面。我使用私有变量跟踪所有这些。最简单的是“private int _step = 1;”然后根据您所处的步骤决定在DocumentCompleted中执行的操作。