点击UWP电子邮件超链接

时间:2017-07-19 21:22:16

标签: c# xaml uwp uwp-xaml

我正在尝试学习UWP / XAML,并且在点击电子邮件链接时尝试打开默认电子邮件客户端。这就是我所拥有的

                             

                <TextBlock FontSize="36"     Foreground="Navy">
                    <LineBreak/>
                    <Run Foreground="Navy" FontFamily="Segoe UI Light" FontSize="36">
                        Contact This Person
                    </Run>
                    <LineBreak/>
                    <LineBreak/>
                    <Run Foreground="Navy" FontFamily="Segoe UI Light" FontSize="30">
                        Bob Smith
                    </Run>
                    <LineBreak/>
                    <Run Foreground="Navy" FontFamily="Segoe UI Light" FontSize="30">
                        123 Fake Street
                    </Run>
                    <LineBreak/>
                    <Run Foreground="Navy" FontFamily="Segoe UI Light" FontSize="30">
                        FooBar, Foo
                    </Run>
                    <LineBreak/>

                    <Run Foreground="Navy" FontFamily="Segoe UI Light" FontSize="30">
                       5551212
                    </Run>
                    <LineBreak/>

                    <Hyperlink  NavigateUri="mailto:test@blahblah.com" >Email Bob</Hyperlink>

                </TextBlock>

            </StackPanel>
        </Border>

当我点击电子邮件链接时,我会看到一个弹出窗口,询问我是否要切换到Chrome。我需要.cs代码,还是可以在XAML中处理?

1 个答案:

答案 0 :(得分:3)

默认情况下,MAILTO:协议与邮件客户端无关。

客户端可以通过在您提到的对话框中选择应用程序,将应用程序应用程序与协议相关联。执行此操作将在HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\URLAssociations\‌​MAILTO\UserChoice创建注册表项以存储URL关联。需要在这些键中设置的值取决于您是否为{8}之前的Windows 8或更高版本。

总而言之,您正在看到该对话框,因为您尚未设置默认邮件客户端来处理具有mailto:协议的网址。