【发布时间】:2012-04-18 10:28:07
【问题描述】:
我有一个绑定到 DataSet 的 DataGridView。 DataSet 的数据来自 XML 文件。在 XML 文件中有一个元素包含基本的 html 数据(仅<p> 和<strong>):
<?xml version="1.0" encoding="utf-8"?>
<entries>
<entry>
<desc><![CDATA[[<p>Some <strong>text.</strong></p>]]></desc>
</entry>
</entries>
当我有一个 DataGridView 的列绑定到该字段 desc 时,html 将显示为带有其标签 (<p>Some <strong>text.</strong></p>) 的字符串。当我将这个 xml 保存回来时,标签会被转换为它们的 html 实体。
如何在文本框中将 html 代码显示为富文本(“Some text.”)?我想我需要在这里制作一个自定义的 Richtextbox 列类型,但作为初学者我有点卡住了。此外,文本应该可以使用富文本编辑器进行编辑。
有人可以帮我解决这个问题吗?
【问题讨论】:
-
您可以尝试使用任何富文本框编辑器,例如使用 jquery 插件stackoverflow.com/questions/9159965/…
-
我个人会看一些主细节设计,而不是富文本框列。即使有一个开箱即用的富文本框列,我想用户体验也不会那么好。相反,我会在 datagridview 中显示所有标准网格样式数据,并在网格下方有一个单独的富文本框,用于编辑 xml 数据。
-
哦,我也刚刚添加了 winforms 标记 - 很确定这是正确的,因为 datagridview 是一个 winforms 控件。对不起,如果那是错误的。
-
@David,我认为你是对的。在 DataGridView 中编辑 Richtextbox 的用户体验相当糟糕,因此我按照您的提示提供了单独的编辑掩码。但是,我也被困在这里。见:stackoverflow.com/questions/10224556/…
标签: c# .net winforms datagridview richtextbox