0

我一直在尝试更改 HTML 代码中选择标记的 HTML 代码,但每当我这样做时

"Object reference not set to an instance of an object"

发生错误。这是 C# 代码:

 public void SetDefaultValue(string ControlID,string Value)
 {
HtmlDocument doc = webBrowser1.Document;
HtmlElement list = doc.GetElementById(ControlID);
list.OuterHTML+= Value;         
 }
private void Form1_Load(object sender, EventArgs e)
{            
    htmlLoadWebbrowser1.SetDefaultValue("D8876943-5861-4D62-9249-C5FEF88219FA", "<SELECT id=\"D8876943-5861-4D62-9249-C5FEF88219FA\" multiple size=\"4\" name=\"drop1\"> <OPTION value=\"3\">item 3</OPTION></SELECT>");            
}

该函数用于更改 HTML 页面中 select 标记的代码,它通过“controlID”接收控件的 ID,并通过“Value”生成内部代码。我怀疑我需要在其他地方调用该函数,问题是我不知道在哪里。谢谢你。

4

1 回答 1

1

您的代码假定文档已完成加载,而在表单加载期间并非如此。等到 DocumentCompleted 事件再访问文档。

于 2013-04-27T17:27:00.913 回答