在Silverlight中,FlowDocument的最佳替代品是什么?

5

我正在将一个应用程序从WPF迁移到Silverlight,但很遗憾地发现FlowDocument支持不足。

那么在Silverlight中展示带有标记的文本的最佳方法是什么?

我只需要基础功能,例如:

  • 加粗
  • 斜体
  • 超链接
  • 颜色
  • 字体大小

添加:

我的意思不是像Vectorlight演示中的RichTextBox,而是一种在应用程序表面上格式化文本的方式,就像我可以在WPF中使用FlowDocument一样:

alt text
(来源:deviantsart.com)


你的编辑让我感到困惑 - on the application surface itself 到底是什么意思? - Todd Main
不要在TextBox中,而是在TextBlock中显示,即不是用户应该编辑的内容,而只是应用程序上的解释文本。 - Edward Tanguay
1
我在这里发布了一个视频(“如何轻松设置粗体...”),解释了我在这里的意思:http://tanguay.info/dpwpf - Edward Tanguay
展示你的意思的好方法。请在下面看到内联答案。 - Todd Main
向量光演示展示了完全使用控件,但是您应该注意到工具栏等不是控件的一部分,基本控件就像一个文本框。这反过来可以被样式化和设置为只读,因此可以创建看起来与您发布的示例相同的内容。但是,如果我在SL4中执行此操作,我会考虑RichTextBox而不是免费的第三方项目。 - AnthonyWJones
4个回答

4
在Silverlight 3中,Vectorlight的免费RichTextBox可以使用HTML来完成所需的工作。
在Silverlight 4中,您可以选择使用RichTextBox来表示您的内容。

请注意,RichTextArea在SL4 RC中更名为RichTextBox。 - Timores
@Timores:Beta 2版本同时具备这两个功能,富文本区域是否已从RC中删除(我还没有下载它)? - AnthonyWJones
@Timores:看文档的话貌似有。 - AnthonyWJones
我正在检查Silverlight 4中的RichTextArea控件,看起来很有前途:http://blogs.msdn.com/silverlight_sdk/archive/2009/12/03/have-you-checked-out-the-new-richtextarea-control.aspx - Edward Tanguay
@Anthony,这个变更说明提到了RichTextArea现在改称为RichTextBox。请查看http://msdn.microsoft.com/en-us/library/cc645049(VS.96).aspx的结尾部分。 - Timores
@Edward,我认为Anthony的答案是正确的。RichTextBox控件接受段落内容(如FlowDocument),并且可以设置为只读。 - Timores

1
如果你成功地实现了这样的东西,给我发消息,也许我们可以合作,将我的“BindableFlowDocument”带入Silverlight的世界。 ;) 编辑 - 哇,我一定搞混了,我的原始答案完全错了。

1

0

在Silverlight 4.0中,只需使用RichTextBox即可。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接