请问需要准备哪些东西呢?功能还是比较简单的,工具栏那里,能够设置字体方案、大小、颜色,再加上插入图片就差不多了。那么用C#来做的话,需要准备哪些知识?
这里的难点在于,如何实现对Html文档进行编辑?webbrowser控件好像并不支持编辑(我设想过在每次玩家尝试去编辑的时候,利用第三方库HtmlAgilityPack提供的HtmlDocument类来解析并更新整个Html文档、然后重新载入,但是这样不知道怎么具体实现,而且感觉挺恶心的~);而如果不用Html文档、而是用一般的RichTextBox来编辑富文本的话,由于我设想的文档形式还是类似Html那样基于标签的,所以想要做一些自定义标签以便于实现更多的功能(比如默认中文字体、默认英文字体、重点内容标记等等),而用这种控件好像不能满足我的要求。

解决方案 »

  1.   

    可以用第三方库啊 UEditor 之类的。纯客户端可以用WPF啊,支持HTML的好像,有例子可以做到和Word差不多,你自己网上找找。VSCODE开源的,有兴趣可以去读读。
      

  2.   

    昨晚查了好久,貌似比较灵活又比较简单的方式就是WPF+mshtml了,不过不知道是否真的可以满足我的要求。
      

  3.   

    html 用 UEditor ,或其他的 第三方富文本编辑器
    WP 和 WPF 用 Richtextbox
    或是 WebOffice
      

  4.   

    UEditor是开源的,貌似不错,不过支持的语言里貌似没有C#。kindeditor支持C#,但是不支持自己修改。
      

  5.   

    webbrowser支持编辑
    webbrowser1.DocumentText = string.Empty;
    webbrowser1.Document.ExecCommand("EditMode", false, null);
    webbrowser1.Document.ExecCommand("LiveResize", false, null);比如文字加粗
    webbrowser1.Document.ExecCommand("Bold", false, null);
      

  6.   

    UEditor是开源的,貌似不错,不过支持的语言里貌似没有C#。kindeditor支持C#,但是不支持自己修改。
    你可以百度下 。确实,他是 JS 的,你可以百度下 有支持 C# 的 
      

  7.   

    不知道允不允许自定义标签。另外想知道哪里有webbrowser的比较入门级的使用手册之类的。网上搜到的比较凌乱。
      

  8.   

    不知道允不允许自定义标签。另外想知道哪里有webbrowser的比较入门级的使用手册之类的。网上搜到的比较凌乱。
    当然可以,能实现HTML编辑器基本功能,不是特殊要求,能满足编辑需求比如插入一个图片:            insertImagesForms c = new insertImagesForms();
                if (c.ShowDialog()== DialogResult.OK && !string.IsNullOrEmpty(c.picture))
                {
                    IHTMLDocument2 doc = (IHTMLDocument2)this.w1.Document.DomDocument;
                    IHTMLTxtRange range = doc.selection.createRange() as IHTMLTxtRange;
                    range.pasteHTML(@c.picture);
                }
      

  9.   


    研究了一下,越来越糊涂了。现在有两个问题:
    第一个是,这个命令webbrowser1.Document.ExecCommand("EditMode", false, null);的反向命令是什么?就是调用了后怎么退出编辑模式?
    第二个是,为什么在官方文档里,我想看Document.ExecCommand()的第一个参数可以取那些值时,它给我列出来的是一些枚举值、而不是字符串呢?最后,那里可以找到webbrowser的比较详尽的初级使用说明呢?我现在只是会一些基本的C#语法、外加会用一些简单的控件而已。
      

  10.   


    研究了一下,越来越糊涂了。现在有两个问题:
    第一个是,这个命令webbrowser1.Document.ExecCommand("EditMode", false, null);的反向命令是什么?就是调用了后怎么退出编辑模式?
    第二个是,为什么在官方文档里,我想看Document.ExecCommand()的第一个参数可以取那些值时,它给我列出来的是一些枚举值、而不是字符串呢?最后,那里可以找到webbrowser的比较详尽的初级使用说明呢?我现在只是会一些基本的C#语法、外加会用一些简单的控件而已。 网上搜,例子一大把
      

  11.   

    上网搜了搜,原来是BrowseMode。另外我直接在代码里按F1键,通过官方文档里的那个链接得到的是C++语言里的枚举值,并不是C#的;不过还好,在JavaScript语言里的枚举值适用于C#。
    然后这些官方文档说已经很久没维护了,上次维护的时间还是2015年;所以难道是有什么替代的产品了、现在的不鼓励用了吗?
      

  12.   

    上网搜了搜,原来是BrowseMode。另外我直接在代码里按F1键,通过官方文档里的那个链接得到的是C++语言里的枚举值,并不是C#的;不过还好,在JavaScript语言里的枚举值适用于C#。
    然后这些官方文档说已经很久没维护了,上次维护的时间还是2015年;所以难道是有什么替代的产品了、现在的不鼓励用了吗?
    你QQ多少,我加你,给你传一份