【发布时间】:2012-03-25 17:22:01
【问题描述】:
我正在尝试自学 C#,并开始尝试转换我最初用 Autoit 编写的程序。
我正在使用 Windows 应用程序表单,并且该程序假定将一两个链接作为输入。导航到这些页面,从表格中获取一些链接,然后访问每个页面以获取一些内容。
如果只输入一个链接,它似乎会转到该页面并从表格中获取链接,就像它假设的那样。如果输入了两个链接,它似乎只能从第二个表中获取链接。
所以如果两个链接都通过这个方法
private void getPageURLList(string site1, string site2)
{
getPageURLList(site1);
getPageURLList(site2);
}
调用与只有一个链接时调用的方法相同的方法
private void getPageURLList(string site)
{
webBrowser.DocumentCompleted += createList;
webBrowser.Navigate(site);
}
我很确定问题是在 createList 第一次启动之前第二次调用了“导航”。
我使用 WebBrowser 的原因是因为这些页面使用 Javascript 对表中的链接进行排序,因此 HTTPRequests 和 HTMLAgilityPack 似乎无法抓取这些链接。
所以我想我的问题是:在我完成当前页面上的操作之前,如何让我的 WebBrowser 不导航到新页面?
【问题讨论】:
标签: c# navigation browser