我的要求 - 我以编程方式打开 Internet Explorer 的一个实例。然后,我获取 HTMLDocument 并查找输入字段(文本框),然后设置其值。
HTMLDocument oDoc = new mshtml.HTMLDocumentClass();
oDoc = (HTMLDocument)oBrowser.Document;
HTMLInputElement txtbox1 = (HTMLInputElement)oDoc.all.item("login",0);
txtbox1.setAttribute("value", "test_user_name", 0);
//txtbox1.value = "test_user_name";
在查找输入字段之前,我的代码工作正常。问题出在我上面发布的代码中。我获得了 HTMLDocument 对象,然后查找名为“login”的 HTMLInputElement。在这里,我遇到了一个不一致的问题 - 有时无法识别文本框,因此当它到达txtbox1.SetAttribute
ortxtbox1.value
然后 aNullReferenceException
被抛出。但是,这并不总是发生。有时不会抛出异常并且代码工作得很好。我已经尝试通过代码进行调试,但是当我通过代码进行调试时,错误从未出现过!!
我无法找出原因可能是什么?是什么导致了这种不一致?有任何想法吗?