如何在 UWP 中将文本块内容制作为超链接?

How to make textblock content to Hyperlink in UWP?

我在 UWP 文本块中有电子邮件 ID,如何将其设为 "hyperlink",以便当我单击它时,它应该将我带到 outlook\email。

下面是代码

public string EmailID
{
    get => _emailID;
    set
    {
        _emailID = value;
        OnPropertyChanged("EmailID");
    }
}

XAML:

<TextBlock DataContext="{StaticResource Email}" 
    Text="{Binding List.EmailID, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>

我需要使用 HyperlinkBut​​ton 而不是 Textblock 吗?

您可以使用 HyperLinks.

HyperLinkNavigateUri 设置为邮件 uri,如下所示:

<TextBlock>
    <Hyperlink NavigateUri="mailto:thisismuzib@gmail.com"> Email me human</Hyperlink>
</TextBlock>

或者您可以将它绑定到后端字符串,前提是该字符串以 "mailto:" 开头,如下所示:

TextBlock>
    <Hyperlink NavigateUri="{x:Bind myuri}">Email</Hyperlink>
</TextBlock>

和后端:

string myuri = "mailto:whatever@outlook.com";

谢谢大家,下面的方法帮助我修复了

<HyperlinkButton    NavigateUri="{Binding List.EmailLink}" 
Style="{StaticResource ResourceKey=HyperlinkStyle}" Content="{Binding List.Email}" />

属性:

public string EmailLink {get { return "mailto:" + _email; }set { }}

public string Email {get => _email;set{_email = value;}}