В приложении C# WinForms я использую элемент управления веб-браузера, в котором я просматриваю некоторые проекты HTML.
Я мог изменить атрибуты элемента html с помощью кода, а затем отредактировать.
Однако я не мог клонировать элемент html, чтобы снова добавить их на страницу html. Я пробовал следующий код:
HtmlElement old_element = WebBrowser1.Document.GetElementById("element1");
HtmlElement new_element = my_element;
new_element.Style = "background-color:orange;";
my_element.Parent.InnerHtml += new_element.OuterHtml;
При запуске кода цвет фона применяется как к old_element, так и к new_element.
Я хочу, чтобы изменения применялись только к new_element при сохранении старого элемента как есть.
Возможно ли это, не имея дело с элементом html как текстом?
Я просто пытался объяснить, что я хочу делать. Пробовал это решение, но выдает ошибку, что этот объект не может быть сериализован
Похоже, что с HTMLElement не работает





То, что вы делаете, - это передача ссылки с
HtlmElement new_element = my_element;, это не создает новый объект, и поэтому изменения применяются к обоим. это дубликат Объекты глубокого клонирования