我正在使用Xaml和C#为Windows Phone 8.1和Windows 8.1创建通用Windows运行时应用程序。
我有内联超链接设置如此 -
<TextBlock Width="400" TextWrapping="Wrap">
<Span FontSize="20">
This is an example of how Hyperlink can be used in a paragraph of text. It might be helpful for you look to
<Hyperlink NavigateUri="http://www.bing.com">bing</Hyperlink>
for more answers in the future.
</Span>
</TextBlock>
这将显示带有下划线的文本,指示可点击的超链接。但是我想按颜色指示超链接而不是下划线,因为我可以在TextBlock中有多个超链接。
我想从内联超链接中删除下划线 - 在WP 8.1和Windows 8.1 Store应用程序中不再存在TextDecorations属性。
注意*我使用的是超链接元素而非HyperlinkButton,因为我需要将链接与文本内联。
答案 0 :(得分:1)
我会写评论,但我的声誉还不足以做到这一点。
我在win 8.1和win phone 8.1项目的空白处尝试了相同的代码。但是,默认情况下,超链接显示为颜色,而不是与项目相对的下划线。我的代码如下所示
<TextBlock Width="400" TextWrapping="Wrap">
<Span FontSize="20">
This is an example of how Hyperlink can be used in a paragraph of text. It might be helpful for you look to
<Hyperlink NavigateUri="http://www.bing.com" Foreground="#FF0007FF">bing</Hyperlink>
for more answers in the future.
</Span>
</TextBlock>
你可以试试Foreground属性吗?也许它可以帮助你。
答案 1 :(得分:1)
在Windows 8.1的最终版本中,Hyperlink-element没有下划线。也许混淆是由超链接周围的焦点边框引起的?所以XAML:
<TextBlock Width="400" TextWrapping="Wrap" VerticalAlignment="Center">
<Span FontSize="20">
This is an example of how Hyperlink can be used in a paragraph of text. It might be helpful for you look to
<Hyperlink NavigateUri="http://www.bing.com">bing</Hyperlink>
for more answers in the future.
</Span>
</TextBlock>
显示为:
可以欺骗观众的一件事是,如果页面没有任何其他可聚焦项目,则超链接获得焦点并围绕它绘制边框。这可能看起来像下划线:
如果你想摆脱这种情况,可以在页面顶部添加带有不透明度0的按钮。
如果要为超链接设置样式,可以使用以下键覆盖它:
<SolidColorBrush x:Key="HyperlinkDisabledThemeBrush" Color="#66000000" />
<SolidColorBrush x:Key="HyperlinkForegroundThemeBrush" Color="#FF4F1ACB" />
<SolidColorBrush x:Key="HyperlinkPointerOverForegroundThemeBrush" Color="#CC4F1ACB" />
<SolidColorBrush x:Key="HyperlinkPressedForegroundThemeBrush" Color="#994F1ACB" />
因此,如果您有以下App.xaml.cs:
<Application.Resources>
<ResourceDictionary>
<SolidColorBrush x:Key="HyperlinkForegroundThemeBrush" Color="Green" />
</ResourceDictionary>
</Application.Resources>
您将获得绿色超链接:
如果您希望链接具有下划线,则可以使用Underline-元素。 XAML:
<TextBlock Width="400" TextWrapping="Wrap" VerticalAlignment="Center">
<Span FontSize="20">
This is an example of how Hyperlink can be used in a paragraph of text. It might be helpful for you look to
<Hyperlink NavigateUri="http://www.bing.com"><Underline>bing</Underline></Hyperlink>
for more answers in the future.
</Span>
</TextBlock>
结果:
答案 2 :(得分:0)
我正在使用我的应用程序
<Hyperlink TextDecorations="None" ...></Hyperlink>
摆脱下划线。