2014-01-16 5 views
0

을 사용하여 야후 메일의 확인란을 클릭 할 수 없습니다. WinForms에서 아주 간단한 WebBrowser 컨트롤을 사용하여 야후 메일을 사용하려고합니다. vs2010에서 WebBrowser 구성 요소를 사용하고 있습니다. 첫째, 나는 페이지를로드 :.NET WebBrowser 컨트롤

private void btnSelectAll_Click(object sender, EventArgs e) 
{ 
    // Select checkboxes containing the word "this" (Select this email) 
    foreach (HtmlElement oCheckBox in webBrowser1.Document.GetElementsByTagName("input")) 
    { 
    if (oCheckBox.GetAttribute("type").ToLower() == "checkbox") 
    { 
     if (oCheckBox.OuterHtml.ToLower().Contains("this")) 
     { 
     //oCheckBox.SetAttribute("value", "Yes"); //did not work 
     //oCheckBox.SetAttribute("value", "1"); //did not work 
     //oCheckBox.InvokeMember("Click");   //did not work 
     oCheckBox.InvokeMember("CLICK");   //did not work 
     } 
    } 
    } 
} 

은 위의 모든 시도하고 그들 중 누구도 확인란을 선택 :

webBrowser1.Url = new Uri("http://mail.yahoo.com"); 

가 그럼 난 내 이메일에있는 모든 항목을 선택하는 시도입니다. 야후 메일의 체크 박스가 어떻게 설정되어 있는지 확실하지 않은가요? 어떤 도움을 주시면 감사하겠습니다.

덕분에 손 전에

+0

, 요소의 – SLaks

+0

유형은 "체크 박스"입니다 그들이 가지고있는 요소의 종류 종류의 내용을 확인하기 위해 개발 도구를 사용하여, 그것은는 "실행 ..InvokeMember ("CLICK") .. "그냥 체크 박스를 선택하지 않습니다. – user3062349

답변

0

해결 방법 :

private void btnSelectAll_Click(object sender, EventArgs e) 
{ 
    // Select checkboxes containing the word "this" (Select this email) 
    foreach (HtmlElement oCheckBox in webBrowser1.Document.GetElementsByTagName("input")) 
    { 
    if (oCheckBox.GetAttribute("type").ToLower() == "checkbox") 
    { 
     if (oCheckBox.OuterHtml.ToLower().Contains("this")) 
     { 
     oCheckBox.SetAttribute("checked", "true"); 
     } 
    } 
    } 
}