使文本块上的URL可单击

时间:2009-12-15 22:55:02

标签: c# wpf xaml hyperlink textblock

我正在编写一个小小的Twitter客户端,只是为了好玩。我在TextBlock上发了推文,我希望点击这些网址。

我知道我必须用正则表达式解析网址,但是......我如何在TextBlock上添加文字和链接?

我不能使用Hello check my blog at <Hyperlink>http​://myblogurl.com</Hyperlink>之类的字符串,因为TextBlock无法解析代码。

那么,我怎么能拥有一个可能有链接的TextBlock?或者不是?

谢谢。

4 个答案:

答案 0 :(得分:3)

<RichTextBox  IsDocumentEnabled="True">
        <FlowDocument>
          <Paragraph>
          This is a richTextBox. And this is a <Hyperlink NavigateUri="http://www.microsoft.com">Hyperlink</Hyperlink>.
          </Paragraph>
        </FlowDocument>
  </RichTextBox>

MSDN discussion

答案 1 :(得分:1)

不要使用TextBlock,而是使用RichTextBox的WPF版本。这是一个非常灵活的小动物。

答案 2 :(得分:1)

像...一样的东西。

<TextBlock>
    <Hyperlink Name="btnOpen" Click="btnOpen_Click">
        <TextBlock Text="Click to Open" />
    </Hyperlink>
</TextBlock>

答案 3 :(得分:0)

您可以在后面的代码中解析字符串并构建一组内容控件,将文本块更改为包装面板,并将面板的子项设置为您创建的集合。

相关问题