C# GetElementByID不是';行不通
我有以下代码:C# GetElementByID不是';行不通,c#,getelementbyid,C#,Getelementbyid,我有以下代码: web.Document.GetElementById("idLoginUserName").SetAttribute("value", user); 用户是字符串,web是WebBrowser控件。它在下面 private void web_Navigated(object sender, WebBrowserNavigatedEventArgs e) 这是页面上的ID: <input tabindex="100" type="text" name="username
web.Document.GetElementById("idLoginUserName").SetAttribute("value", user);
用户是字符串,web是WebBrowser控件。它在下面
private void web_Navigated(object sender, WebBrowserNavigatedEventArgs e)
这是页面上的ID:
<input tabindex="100" type="text" name="username" id="idLoginUserName" value="" class="textbox ">
调试它时,我可以看到它确实尝试执行它,并且在尝试时返回错误。检查web是否为空 检查web.Document是否为空 检查web.Document.GetElementById(“idLoginUserName”)是否返回null 检查用户是否为空
它必须是其中之一,否则错误来自其他地方。您是否尝试使用
DocumentCompleted
事件而不是导航的,如回答所示,是的,我在DocumentCompleted不起作用后将其更改为。您是否能够准确确定哪个值为null
?调试器很方便。我对它进行了调试,没有发现任何内容为空,但我不太擅长调试,因此可能只是缺少了一些内容。@Minicl55此代码的工作方式是string html2=@;web.DocumentCompleted+=(s,e)=>{web.Document.GetElementById(“idLoginUserName”).SetAttribute(“value”,“XYZ”);};web.DocumentText=html2代码>所以你的bug一定在别的地方。。。
A first chance exception of type 'System.NullReferenceException' occurred in MyProgram.exe
An exception of type 'System.NullReferenceException' occurred in MyProgram.exe but was not handled in user code