2013-04-29 107 views
1

我正在將一個外部頁面加載到我的Webbrowser中。在這個頁面中,表單中有一些組件。在我的代碼中,我想觸發表單的「OnChange」事件。要做到這一點:C#Webbrowser元素RaiseEvent問題

webBrowser1.Document.GetElementById("choose_dept").RaiseEvent("onChange"); 

然而,我的代碼,在這條線停止由於以下錯誤:

Value does not fall within the expected range. 

爲什麼我不能火形式的OnChange事件?我的代碼有問題嗎?

回答

0

請參閱下面的代碼:

webBrowser1.Document.GetElementsByTagName("select")[4].Focus(); 
    webBrowser1.Document.GetElementsByTagName("select")[4] 
.GetElementsByTagName("option")[13].SetAttribute("selected", "true"); 
    SendKeys.Send("{TAB}"); 

全球化志願服務青年鏈接:

RaiseEvent("onchange")

+0

我已經修改你的代碼如下: webBrowser1.Document.GetElementsByTagName( 「形式」) [1] .Focus(); (「格式」)[1] .GetElementsByTagName(「input」)[5] .SetAttribute(「checked」,「checked」); SendKeys.Send(「{TAB}」); 雖然它選擇第5個單選按鈕,但它不觸發事件。有一個this.submit(); onChange事件中的代碼。理想情況下,該頁面應提交但不起作用。 – Dundar 2013-04-29 04:47:15