列出winform中的回复

在我的C#应用​​程序中,我从服务器获得一个xml,其中包含一些回复,例如在论坛post中(包含作者,时间,正文,标题等等)。

当我得到这个xml时,我创建了一个新表单,我想在其中显示这些回复,还有一个带有“添加回复”按钮的小文本框。 我还想在表单中显示的回复列表中的一些编辑按钮或许我自己的回复。

我想到显示回复的最简单方法是在表单中放置一个Web浏览器控件,在xml的字符串中生成一个完整的html页面,并将其放入该Web浏览器控件中。 在它下面,我可以在文本框中添加“添加回复”按钮。 一切都还可以,除了我不知道如何在我自己的回复中实现编辑function(我的意思是我可以在那里添加一个链接……但链接到什么)

我想知道是否有办法从Web浏览器控件获取该编辑事件(我的猜测是我不能)或另一种(可能是简单/简单)的想法,使用其他控件在winform中显示回复

是的,这是可能的,你想打开文档的“设计模式”。 添加对Microsoft.mshtml的引用。 启动一个新的Windows窗体项目并在窗体上放置一个WB和一个按钮。 使代码看起来类似于:

public partial class Form1 : Form { public Form1() { InitializeComponent(); webBrowser1.DocumentText = ""; webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(webBrowser1_DocumentCompleted); button1.Click += button1_Click; } void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) { mshtml.IHTMLDocument2 doc = webBrowser1.ActiveXInstance as mshtml.IHTMLDocument2; doc.designMode = "On"; } private void button1_Click(object sender, EventArgs e) { var html = webBrowser1.Document.Body.All["post-text"].InnerHtml; // do something with that //... } }