如何检测 Web 浏览器是否在单击 C# 中的元素时从目标服务器下载数据
本文关键字:元素 目标 数据 下载 服务器 单击 检测 何检测 Web 是否 浏览器 | 更新日期: 2023-09-27 18:33:47
情况是这样的:我在程序中使用WebBrowser
,我想检测浏览器在单击目标服务器上的html元素时是否从目标服务器下载数据。
这就是我想要做的:
HtmlElement element = browser.GetOneElement
element.InvokeMember("click");
if(will download data from the server?)
{
//do something
}
else
{
//do other thing
}
目前,我的解决方案是设置一个标志来注意正在下载,并且WebBrowser
控件的扩展OnProgressChanged
,将标志设置为true。
这是代码:
private bool _isInteractive;
public bool IsInteractive
{
set
{
_isInteractive = true;
}
get
{
Thread.Sleep(1000);
return _isInteractive;
}
}
然后像这样使用它:
HtmlElement element = browser.GetOneElement
browser.IsInteractive = false;
element.InvokeMember("click");
if(browser.IsInteractive)
{
//do something
}
else
{
//do other thing
}
但我认为它不是那么好,甚至很糟糕。有什么建议吗?
WebBrowser.IsBusy
属性怎么样?