2

我有这样的文字:'IIS7 上的 Rails http://is.gd/vWPn '(这是 shanselman 的推文)。我想以某种方式使用 wpf 显示它。我应该如何预处理文本以及使用什么控件?

当前的解决方案是我创建 2 个控件:标签和超链接并将它们添加到 TextBlock 中。在 powerboots 中它看起来像这样:

boots { border -borderthickness 10 -cornerradius 10 -borderbrush orange `
  { textblock { `
     label 'Rails on IIS7' -backgr green; hyperlink 'http://is.gd/vWPn' -backg 'red' } `
} } -width 400

然而它看起来很奇怪——超链接被移动了,我不知道为什么。替代文字 http://img12.imageshack.us/img12/1363/powerbootshl.jpg

还有一个问题 - 可以使用 Label 来显示文本吗?我问是因为标签似乎无法包装它的内容。我应该使用 TextBlock 还是完全其他的东西?

4

1 回答 1

2

老实说,我对 PowerBoots 一无所知。然而:

我认为就文本预处理而言,您走在正确的轨道上。您将需要解析推文中的文本并弄清楚什么是@参考,什么是 ahyperlink等。

有了这些知识,您就可以开始填充您的 TextBlock,正如我认为您已经尝试在您提供的代码中所做的那样。但是,您认为 aLabel不是正确的选择是正确的。实际上,您想要的 Element 称为 a Run。ARun只不过是一段文本,因此是这个术语。最终,对于您的简单示例,代码如下所示:

boots { border -borderthickness 10 -cornerradius 10 -borderbrush orange `
{ textblock { `
    run 'Rails on IIS7' -backgr green; hyperlink 'http://is.gd/vWPn' -backg 'red' } `
} } -width 400

假设我正确掌握了 PowerBoots 的语法。

于 2009-05-02T03:48:22.583 回答