-1
private void button2_Click(object sender, EventArgs e)
{
webBrowser1.Document.GetElementById("login_login_button").InvokeMember("Click");
//something that wait about 1 or 2 second before execute next line?
webBrowser1.Document.GetElementById("nav_settings_link").InvokeMember("Click");
webBrowser1.Document.GetElementById("language_change2").InvokeMember("Click");
}
從這個代碼,我試圖Thread.Sleep();
和Task Delay();
但它顯示nullException ...(我想是因爲他們正在運行,而該網頁不滿載),任何人都可以幫助我出去了?如何運行每種方法在網頁瀏覽器
現在,我已經發現,我想要的方法是異步方法,以減緩他們仍在運行的時間。
private async void button2_Click(object sender, EventArgs e)
{ webBrowser1.Document.GetElementById("login_login_button").InvokeMember("Click");await Task.Delay(1000); webBrowser1.Document.GetElementById("nav_settings_link").InvokeMember("Click");
await Task.Delay(1000); webBrowser1.Document.GetElementById("language_change2").InvokeMember("Click"); }
只是把代碼中的客戶端。 – Hendry
NullException表示找不到您的元素。所以,你接下來要做的事情很多:等待......再等......直到它顯示出來。一種方法是做循環檢查,直到元素不爲空(當然有延遲),然後點擊它。 – kurakura88
@ kurakura88你有什麼想法來做到這一點? – puydan