呈现HTML的最佳控件
本文关键字:控件 最佳 HTML 呈现 | 更新日期: 2023-09-27 17:57:37
我需要在C#中呈现一些html文本(而不是一个带有<html>
和<body>
标记的html页面,只是一些<i>
和<hr />
之类的东西)。NET 4.0 Winforms应用程序。最好是一个类似Panel
的控件,您只需打开p.HTML = "somehtml"
,它就会显示HTML。有人有过这样的经历吗。NET HTML呈现控件?我在代码项目上发现了这个,但我对上面的东西有点警惕。
为什么不使用内置WebBrowser
控件。您可以始终将html代码段包含在标准的<html/>
标记中。
string html = "<i> some text </i>";
webbrowser1.DocumentText = string.Format("<html>{0}</html>", html);
您可以尝试这个单链接
您可以在中使用WebBrowser控件具有第二个WebBrowser的设计模式控件设置为视图模式。
为了放置WebBrowser控件在设计模式中,可以使用以下代码。
这是一个超级精简的代码所见即所得编辑器的版本我们的软件产品。
只需创建一个新表单WebBrowser控件,并将在表单中_加载
Me.WebBrowser1.Navigate("about:blank")
Application.DoEvents()
Me.WebBrowser1.Document.OpenNew(False).Write("<html><body><div id=""editable"">Edit this text</div></body></html>")
'turns off document body editing
For Each el As HtmlElement In Me.WebBrowser1.Document.All
el.SetAttribute("unselectable", "on")
el.SetAttribute("contenteditable", "false")
Next
'turns on editable div editing
With Me.WebBrowser1.Document.Body.All("editable")
.SetAttribute("width", Me.Width & "px")
.SetAttribute("height", "100%")
.SetAttribute("contenteditable", "true")
End With
'turns on edit mode
Me.WebBrowser1.ActiveXInstance.Document.DesignMode = "On"
'stops right click->Browse View
Me.WebBrowser1.IsWebBrowserContextMenuEnabled = False