Вот мой код,
List<string> ValidLesson = new List<string>();
if (myBrowserESchool.DocumentText.Contains("ddlSinifiSubesi"))
{
HtmlElement ClassName = myBrowserESchool.Document.GetElementById("ddlSinifiSubesi");
bool flag = ClassName == null;
if (!flag)
{
HtmlElementCollection ClassNameOptionList = ClassName.GetElementsByTagName("option");
for (int i = 0; i < ClassNameOptionList.Count; i++)
{
ClassNameOptionList[i].SetAttribute("selected", "selected");
if (ClassNameOptionList[i].InnerText != null)
{
HtmlElement buttonelement = myBrowserESchool.Document.GetElementById("btnListele");
buttonelement.InvokeMember("click");
while (true)
{
HtmlElement ClassLesson = myBrowserESchool.Document.GetElementById("ddlDersler");
if (ClassLesson != null)
{
HtmlElementCollection ClassLessonOptionList = ClassLesson.GetElementsByTagName("option");
foreach (HtmlElement lessonoption in ClassLessonOptionList)
{
ValidLesson.Add(lessonoption.InnerText);
}
ClassLesson = null;
break;
}
Application.DoEvents();
Thread.Sleep(500);
}
}
}
}
}
Здесь я хочу нажать кнопку в цикле for.Но после первого клика buttonelement.InvokeMember("click");
не работает.Другая проблема, которую я теряю ClassName
после первой загрузки страницы, и даю внутреннему тексту исключение, потому что документ веб-браузера изменился.Что я должен сделать, чтобы не потерять этот элемент?Извините за мой плохой английский.