Hola,
Se trata de un código para loggear. Rellena de forma automático al login de una página.
Dim theElementCollection As HtmlElementCollection = WebBrowser1.Document.GetElementsByTagName("Input")
For Each curElement As HtmlElement In theElementCollection
Dim controlName As String = curElement.GetAttribute("id").ToString
If controlName = idUser Then
curElement.SetAttribute("Value", UserName)
End If
Next
El error se produce en ("Input").y es "NullReferenceException"---> "Referencia a objeto no establecida como instancia de objeto"
Si coloco el código en el evento WebBrowser1_DocumentCompleted entonces no se produce ningún error pero me interesa introducirlo en un evento Click de un botón.
Nota:
idUser es una variable string con el id del control de la página donde hay que introducir el nombre de usuario
UserName es una variable string para el nombre del usuario
Ya se porqué se produce el error:
Porque primer tiene que estar cargada la página. Como no encuentra la colección de controles se produce un error.
Pare evitar el error puede ponerse la condición:
If (WebBrowser1.Document IsNot Nothing) Then
...
end if
Y por supuesto esperar a que cargue la página.