Приложение WinForm. Я хочу очистить часть веб-страницы HTML и сохранить ее в локальном HTML-файле.
У меня есть один локальный файл, "empty.htm" (содержащий только "Я пуст" в теле), одна удаленная веб-страница и два элемента управления WebBrowser. WebBrowser1 переходит на удаленную страницу, WebBrowser2 - в локальный файл. Оба отображают свой контент соответствующим образом.
Теперь я пытаюсь:
string rootIDToCopy = "InterestingDivID";
HtmlDocument htmlDocument = webBrowser1.Document;
HtmlElement rootElementToCopy =
htmlDocument.GetElementById(rootIDToCopy);
if (rootElementToCopy != null)
{
HtmlDocument dest = webBrowser2.Document;
if (dest != null)
{
HtmlElement destBody = dest.Body; // Point 1
destBody.AppendChild(rootElementToCopy); // Point 2
}
}
Теперь, когда я нахожусь в пункте 1, я вижу, что destBody существует, не имеет детей и имеет InnerHTML «Я пустой». rootElementToCopy выглядит допустимым (имеет трех детей и нормальный InnerHtml). Тем не менее, в точке 2 я получаю «Значение не терпит неудачу в ожидаемом диапазоне» (возможно, из Windows.Forms.UnsafeNativeMethods.IHTMLElement2.InsertAdjacentElement).
Помощь будет оценена!