gpt4 book ai didi

wpf - 在不丢失悬停颜色的情况下更改超链接前景

转载 作者:行者123 更新时间:2023-12-03 11:51:06 25 4
gpt4 key购买 nike

我正在编写一个 WPF 应用程序,我希望我的一些超链接默认为蓝色,而其他超链接为绿色。没问题——我可以设置 Foreground :

<TextBlock><Hyperlink Foreground="#0C0">Mark as done</Hyperlink></TextBlock>

问题是,当我这样做时,悬停效果消失了。在普通的超链接中,当我将鼠标移到链接上时,它会变成红色,而当我将鼠标移开时,它会变回蓝色。但是在分配了 Foreground 属性的超链接中,它始终是那种颜色——悬停时的红色完全被抑制。

如何在不丢失默认悬停行为和颜色的情况下更改超链接的颜色?

最佳答案

直接设置前景(如您所做的那样)不起作用,并且在样式中设置它也不起作用,除非您从默认超链接样式(必须包括 OnMouseOver 触发器)“派生”该样式。所以这有效:

<TextBlock>
<Hyperlink>
<Hyperlink.Style>
<Style TargetType="Hyperlink"
BasedOn="{StaticResource {x:Type Hyperlink}}">
<Setter Property="Foreground" Value="#0C0"/>
</Style>
</Hyperlink.Style>
Mark as done
</Hyperlink>
</TextBlock>

将该样式提取回 Window 资源并使用键引用它可能会使 XAML 更具可读性,但上面的代码可以完成这项工作。

关于wpf - 在不丢失悬停颜色的情况下更改超链接前景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1252889/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com