我正在尝试学习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中处理?
答案 0 :(得分:3)
默认情况下,MAILTO:协议与邮件客户端无关。
客户端可以通过在您提到的对话框中选择应用程序,将应用程序应用程序与协议相关联。执行此操作将在HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\URLAssociations\MAILTO\UserChoice
创建注册表项以存储URL关联。需要在这些键中设置的值取决于您是否为{8}之前的Windows 8或更高版本。
总而言之,您正在看到该对话框,因为您尚未设置默认邮件客户端来处理具有mailto:
协议的网址。