3

我在 C# 中开发了一个超链接按钮。hyperlinkBut​​ton 中的下划线让我很恼火。我不知道如何删除它。帮我删除下划线,我需要 C# 中的答案。[这是一个 WP8 应用程序]

    HyperlinkButton hyperlinkButton = new HyperlinkButton()
    {
        Content = "Click me",
        HorizontalAlignment = HorizontalAlignment.Left,
        NavigateUri = new Uri("http://my-link-com", UriKind.Absolute)
    };
4

2 回答 2

6

引用道格拉斯·斯托克韦尔的话

您可以直接设置属性,也可以使用样式:

<Style TargetType="{x:Type Hyperlink}">
    <Style.Triggers>
        <Trigger Property="IsMouseOver" Value="True">
            <Setter Property="Foreground" Value="DarkSlateBlue" />
        </Trigger>
    </Style.Triggers>
    <Setter Property="Foreground" Value="SteelBlue" />
    <Setter Property="TextBlock.TextDecorations" Value="{x:Null}" />
</Style>
于 2013-08-23T13:33:20.523 回答
2

我不知道另一种方法,但在 XAML 中设置 ControlTemplate。但是你可以在 C# 中使用它:

var str =   "<ControlTemplate TargetType=\"HyperlinkButton\" xmlns=\"http://schemas.microsoft.com/winfx/2006/xaml/presentation\">" +
            "   <TextBlock HorizontalAlignment=\"{TemplateBinding HorizontalContentAlignment}\" Text=\"{TemplateBinding Content}\" VerticalAlignment=\"{TemplateBinding VerticalContentAlignment}\"/>" +
            "</ControlTemplate>";

var template = (ControlTemplate)XamlReader.Load(str);  

HyperlinkButton hyperlinkButton = new HyperlinkButton()
{
    Content = "Click me",
    HorizontalAlignment = HorizontalAlignment.Left,
    NavigateUri = new Uri("http://my-link-com", UriKind.Absolute),
    Template = template
};

希望这可以帮助

于 2013-08-23T14:46:21.513 回答