Моя программа добавляет некоторые элементы HTML из файла шаблона HTML по действиям пользователя.
string currDir = Directory.GetCurrentDirectory();
string targetURL = String.Format("file:///{0}/Resources/question_template.html", currDir);
web.Navigate(targetURL);
web.DocumentCompleted += Web_DocumentCompleted;
// writing user's selections into a html file as table.
private static void Web_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
GenerateQuizForTypeA(MainWindow.VM.lstPartA_Words);
...
File.WriteAllText(@"Resources\bob_output.html", web.Document.Body.Parent.OuterHtml, Encoding.GetEncoding(web.Document.Encoding));
}
И странным моментом является то, что HTML-файлы генерируются совершенно по-разному в зависимости от среды.
До сих пор я понял, что веб-браузер C # WinForms основан на движке рендеринга IE7, если вы не измените значение реестра. (например: Использовать последнюю версию Internet Explorer в элементе управления веб-браузера )
но это не проблема рендеринга. Я не ожидал, что два разных HTML-файла могут быть созданы с помощью одного и того же EXE-файла.
Я использовал веб-браузер HtmlElement, web.Document.CreateElement, SetAttribute
Пожалуйста, обратитесь к обоим скриншотам.
обе программы были встроены в envB и используют .net Framework 3.5, WPF (но в настоящее время используется веб-браузер WinForms с WindowFormsIntegration)
(envA) Windows7 64 бит, IE8
Кроме того, все элементы превращаются в верхние регистры, плюс это избавляет от двойных кавычек. ссылка: http://softinus.com/files/bob/bob_output_IE8.html

(envB) Windows10 64 бит, IE11
ссылка: http://softinus.com/files/bob/bob_output_IE11.html
