如何从xaml中动态创建的超链接中删除下划线?

时间:2016-04-01 11:41:16

标签: c# wpf xaml hyperlink windows-phone-8.1

我正在为Windows Phone 8.1 / 10构建应用程序,我需要将Hyperlink放在TextBlock元素中。

我创建了TextBlock的实例,然后向RunTextBlock.Inlines添加了一些Hyperlink。我需要Hyperlink仅用于Click事件。

我成功实现了我想做的事情。但我无法从Underline

中删除Hyperlink

我想要做的是TextBlock,其中包含可点击的区域。像:

Hello **@clickablething**, how are you today?

似乎WP8.1 / WM10运行时应用程序不支持TextBlock.TextDecorations

我的问题是,Hyperlink包含Click or Tapped事件的替代方法是否有?或者我如何删除超链接的下划线?

1 个答案:

答案 0 :(得分:0)

您可以为超链接创建自己的控件模板,并删除此模板中的下划线。我找到了这个链接:https://msdn.microsoft.com/en-us/library/cc296242(v=vs.95).aspx

在此模板的末尾,您可以看到:

<TextBlock
                      x:Name="UnderlineTextBlock"
                      Text="{TemplateBinding Content}"
                      HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
                      VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
                      Margin="{TemplateBinding Padding}"
                      TextDecorations="Underline"
                      Visibility="Collapsed"/>

删除TextDecoration =“Underline”,你应该完成。

这个链接是关于WPF的Silverlight版本的,但在你的情况下应该是类似的。