使文本块上的 URL 可单击

发布于 2024-08-14 08:54:34 字数 357 浏览 10 评论 0原文

我正在编写一个 Twitter 客户端只是为了好玩。我将推文的文本放在 TextBlock 上,并且希望使 URL 可点击。

我知道我必须使用正则表达式解析 URL,但是...如何将文本加链接放在 TextBlock 上?

我不能有这样的字符串: Hello check my blog athttp ://myblogurl.com 因为 TextBlock 无法解析标签。

那么,我如何才能拥有一个可能有链接或没有链接的 TextBlock 呢?

谢谢。

I'm programming a little Twitter Client just for fun. I have the tweet's text on a TextBlock and I want to make the URLs clickable.

I know that I have to parse the URLs with a regexp but... how I put text plus link on the TextBlock?

I can't have a string like: Hello check my blog at <Hyperlink>http​://myblogurl.com</Hyperlink> because the TextBlock doesn't parse the tags.

Then, how I can have a TextBlock that maybe has a link or maybe not?

Thank you.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

风流物 2024-08-21 08:54:35
<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 讨论

<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

写给空气的情书 2024-08-21 08:54:35

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

Rather than use a TextBlock, take a look at using the WPF version of the RichTextBox. It's a very flexible little critter.

泪痕残 2024-08-21 08:54:35

像...

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

Something like...

<TextBlock>
    <Hyperlink Name="btnOpen" Click="btnOpen_Click">
        <TextBlock Text="Click to Open" />
    </Hyperlink>
</TextBlock>
落墨 2024-08-21 08:54:35

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

You could parse the string in code behind and build up a collection of content controls, change your textblock to a wrap panel and set the children of the panel to your collection you have created.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文