状況は次のとおりです。WebBrowser
プログラムで使用します。html要素をクリックしたときに、ターゲットサーバーからブラウザーがダウンロードしたデータを検出したいです。
これは私がやりたいことです:
HtmlElement element = browser.GetOneElement
element.InvokeMember("click");
if(will download data from the server?)
{
//do something
}
else
{
//do other thing
}
現在、私の解決策は、フラグを設定してダウンロードしていることに注意しOnProgressChanged
、WebBrowser
コントロールを拡張して、そこでフラグを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
}
しかし、それはあまり良くないと思います。助言がありますか?