Нет, это не так. Я попробовал следующее:
DocumentText:
File.WriteAllText(@"C:\doc.txt", webBrowser1.DocumentText, Encoding.UTF8);
GetElementsByTagName ( "HTML")
HtmlElement elem;
if (webBrowser1.Document != null)
{
HtmlElementCollection elems = webBrowser1.Document.GetElementsByTagName("HTML");
if (elems.Count == 1)
{
elem = elems[0];
string pageSource = elem.OuterHtml;
File.WriteAllText(@"C:\doc.txt", pageSource, Encoding.UTF8);
}
}
IOleCommandTarget
public void ShowSource()
{
IOleCommandTarget cmdt = null;
object o = null;
object oIE = null;
try {
cmdt = (IOleCommandTarget)this.Document.DomDocument;
cmdt.Exec(cmdGUID, oCommands.ViewSource, 1, o, o);
} catch (Exception ex) {
throw new Exception(ex.Message.ToString(), ex.InnerException);
} finally {
cmdt = null;
}
}
Единственный способ - просмотреть все фреймовые документы.
Обновлено Если у iframe другой URL, вы получите UnauthorizedAccessException при попытке получить документ iframe