进入设计模式时保留 WebBrowser 的内容

Keep WebBrowser's content when entering in Design Mode

我有这个 WebBrowser 扩展 class,它有一个名为 .DomDesignMode 的布尔值 属性,它设置 DomDocument 是否处于设计模式。

但是,当我将此 属性 设置为 true 时,浏览器会清除其之前通过设置 .DocumentText 属性.

加载的所有内容

有没有办法让它进入设计模式并仍然保留其以前的 HTML 内容?谢谢

Imports System.Windows.Forms
Imports mshtml

Public Class WebBrowserEx
    Inherits WebBrowser

    Private ReadOnly Property DomDocument As mshtml.IHTMLDocument2
        Get
            If Document IsNot Nothing Then
                Return Document.DomDocument
            Else
                Return Nothing
            End If
        End Get
    End Property

    Public Property DomDesignMode As Boolean
        Get
            If DomDocument IsNot Nothing Then
                Return String.Equals(DomDocument.designMode, "on", StringComparison.InvariantCultureIgnoreCase)
            Else
                Return False
            End If
        End Get
        Set(value As Boolean)
            If DomDocument IsNot Nothing Then
                DomDocument.designMode = If(value, "on", "off")
            End If
        End Set
    End Property

End Class

现在,让我们忘记 DomDocument,这就是我们需要的:

WebBrowser1.Document.Body.SetAttribute("contentEditable", "true")

非常感谢this answer available here in Whosebug