C#中设置webBrowser为可编辑模式



首先在from_load事件中添加以下代码:  


webBrowser1.DocumentText = string.Empty;
  
webBrowser1.Document.ExecCommand("EditMode", false, null);
  
webBrowser1.Document.ExecCommand("LiveResize", false, null);
  
webBrowser1.DocumentText = @"现在";


然后webBrowser1里面内容就可以编辑了


其中如果需要得到webBrowser1中的内容可以使用:


webBrowser1.Document.Body.InnerText 和 webBrowser1.Document.Body.InnerHtml


从字面意思上可以看出是分别获取webBrowser1的文本形式内容和html形式内容。

以上是一种方法 ,但是这种方法 有个坏处:

就是如果使用

Navigate(url);

后,控件就不再是编辑状态了.解决的方法 是

private void webBrowser4_Navigated(object sender, WebBrowserNavigatedEventArgs e)

中设置为:

应用设计模式需要使用 COM 接口,

添加一个 MSHTML 的 "Microsoft HTML Object Library" 的引用,

添加一个对 'MSHTML' 的 'using'。

IHTMLDocument2 doc = webBrowser4.Document.DomDocument as IHTMLDocument2;
doc.designMode = "On";

这样就可以了!

原文地址:https://www.cnblogs.com/lujin49/p/2301412.html