Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WPF中的富HTML编辑器_C#_Wpf_Tinymce_Wysiwyg_Rich Text Editor - Fatal编程技术网

C# WPF中的富HTML编辑器

C# WPF中的富HTML编辑器,c#,wpf,tinymce,wysiwyg,rich-text-editor,C#,Wpf,Tinymce,Wysiwyg,Rich Text Editor,我正在开发一个WPF应用程序,我们需要一些丰富的HTML编辑功能。 应用程序通常会生成一些初始HTML(表格等)并呈现给用户,用户可以在将HTML提交回系统之前进行编辑。如果用户可以合并和删除表中的单元格,那就太好了 我真正想要的是一个WYSIWYG编辑器,比如-只针对WPF 到目前为止,我已经尝试将HTML转换为用户可以在中进行交互的 我对结果不是很满意,因为XAML代码无法正确呈现HTML 我的感觉是,一定有人在我面前遇到了同样的问题。有什么建议吗 谢谢 看一看。它是一个具有HTML功能的w

我正在开发一个WPF应用程序,我们需要一些丰富的HTML编辑功能。 应用程序通常会生成一些初始HTML(表格等)并呈现给用户,用户可以在将HTML提交回系统之前进行编辑。如果用户可以合并和删除表中的单元格,那就太好了

我真正想要的是一个WYSIWYG编辑器,比如-只针对WPF

到目前为止,我已经尝试将HTML转换为用户可以在中进行交互的

我对结果不是很满意,因为XAML代码无法正确呈现HTML

我的感觉是,一定有人在我面前遇到了同样的问题。有什么建议吗


谢谢

看一看。它是一个具有HTML功能的wpf富编辑器

Telerik wpf富编辑控件导入和导出为HTML格式,使其成为一种不依赖web浏览器控件编辑HTML的方法。

如果您不熟悉富文本编辑器,您可能会对SpiceLogic WPF HTML编辑器控件的最新版本感兴趣,而不是纯粹的HTML/XHTML编辑器

是的,这个编辑器控件提供了上下文菜单中的表操作,比如合并/删除/添加单元格、行、列等


有一个想法并提供了源代码。请检查项目

尝试控制(也可在NuGet上获得)。

感谢您的快速回复!此方法类似于我在问题中描述的方法,将HTML转换为XAML并用WPF表示。它仍然不能解决我需要以所见即所得方式编辑的HTML表的问题。此链接已失效。我猜您可能在来到这里之前用谷歌搜索过此链接,但无论如何,尝试过此链接吗?我做了一些谷歌搜索,但不知怎的我错过了这个。看起来正是我需要的。如果这不是评论的话,我会给你一个“答案检查”。我试了一下,但根据我所看到的和讨论区的人们所说的,它似乎做得相当好。我只是想你没有尝试过的可能性已经很小了,所以这就是为什么我把它作为评论而不是答案添加:)我应该删除评论并添加答案吗?是的,我相信这对其他人会有很大帮助…警告:Smith editor只有病毒性GPL许可证!这对我来说很有希望。我曾考虑过在我的应用程序中使用Spice Logic的WPF HTML编辑器,但遗憾的是,我知道由于局限性,它对我和许多其他人都不起作用。编辑器使用Win32 interop呈现浏览器实例。缺点是编辑器的浏览器总是覆盖WPF控件,这在嵌入WPF可滚动区域时非常明显。目前,您提到的限制实际上是Microsoft web浏览器控件的限制,而不是SpiceLogic WPF编辑器控件的问题。web浏览器控件位于单独的HWND中,该HWND始终绘制在WPF元素的顶部,如MSDN上的文档所述:。在某些有限的场景中,您可能会遇到这样的问题,这些场景中有一些变通方法。SpiceLogic正在使用基于Chromium的WebView2发布一个新版本,然后这个问题就应该解决了。