【问题标题】:Silverlight XML editor / syntax highlightingSilverlight XML 编辑器/语法高亮
【发布时间】:2010-09-29 12:59:24
【问题描述】:
我正在寻找一个 Silverlight 文本编辑器控件,它提供 XML 语法突出显示。我在 Winforms 或 WPF 中找到了一些答案,例如 here on Stackoverflow,但我没有设法将它们转换为 Silverlight。 Silverlight 缺少 System.Drawing 的事实可能是一个大问题。
我为 Silverlight 找到的唯一文本编辑器是 RichTextEdit on Codeplex,但我认为它不适合用于实时语法高亮显示。
有没有人听说过这样的控件,或者可以提供有关如何构建的提示?
非常感谢,
罗曼
【问题讨论】:
标签:
silverlight
editor
controls
syntax-highlighting
【解决方案3】:
我认为这是一个有趣的问题,但你没有答案。
我不知道现有的控件。
我已经构建了一个用于编辑 XHTML 的控件,但它也使用 System.Drawing 而不是 WPF(因此不适用于 Silverlight)。
WPF 可能至少和 System.Drawing 一样强大,但我不知道。
关于我如何构建它的提示:
- 定义一个 DOM(普通的 System.Xml.XmlDocument 可能适合您)
- 解析文档以实例化 DOM
- 定义用户控件(带有滚动条)
- 将 DOM 实例传递给用户控件
- 在控件的“paint”方法中,绘制 DOM 的可见部分
- 实现对鼠标和按键的支持
如果您真的想要关于如何构建一个的提示,请询问更具体的内容。
【解决方案4】:
您好,感谢您的回答!
不幸的是,虽然 WPF 具有绘图功能,但 Silverlight 运行一组非常有限的 CLR。绘制用户控件看起来是一项艰巨的任务。
但是,以前使用此Rich text editor for Silverlight 已完成此操作。我会看看我是否设法使用类似的技术来呈现 XML 文档。
但有一个问题:用户控件是否足够快以在用户进行更改时即时渲染 DOM?