C# 要在WP7的外部浏览器中打开链接吗
架构如下所示:C# 要在WP7的外部浏览器中打开链接吗,c#,windows-phone-7,hyperlink,browser,C#,Windows Phone 7,Hyperlink,Browser,架构如下所示: 点击一个按钮就会打开一个HTML页面,其中包含一个链接。单击链接后,我想在WP7的外部(默认)浏览器中打开它,以便应用程序关闭,链接从外部打开。如何实现此功能? 在xaml文件中添加了此控件: <phone:WebBrowser Name="browser" Margin="0,78,0,0" /> 现在index_en.html有一个链接将在外部浏览器中打开。您可以使用启动浏览器 我发现您需要转义传递给它的URL:(通常,您可以使用标记上的Target属性进行转义
点击一个按钮就会打开一个HTML页面,其中包含一个链接。单击链接后,我想在WP7的外部(默认)浏览器中打开它,以便应用程序关闭,链接从外部打开。如何实现此功能?
在xaml文件中添加了此控件:
<phone:WebBrowser Name="browser" Margin="0,78,0,0" />
现在index_en.html有一个链接将在外部浏览器中打开。您可以使用启动浏览器
我发现您需要转义传递给它的URL:(通常,您可以使用
标记上的Target
属性进行转义。但是,在WP7
中(至少在Emulator中),这不起作用
您可以使用Navigating
事件进行拦截,如下所示:
void WebBrowser1_Navigating(object sender, NavigatingEventArgs e)
{
if (IsSupposedToOpenInPhoneBrowser(e.Uri))
{
e.Cancel = true;
WebBrowserTask task = new WebBrowserTask();
task.URL = e.Uri.ToString();
task.Show();
}
}
你可以用这样的东西
private void Button_Click_1(object sender, RoutedEventArgs e)
{
WebBrowserTask webBrowserTask = new WebBrowserTask();
webBrowserTask.Uri = new Uri("http://www.someUrl.com");
webBrowserTask.Show();
}
我如何通过跳过来实现它?@Shaireen:通过跳过来实现什么?跳过什么?很抱歉我没有说清楚。实际上,在使用Web浏览器任务时,我需要向它传递一个url。所以这个url应该是html文件的名称?还是应该是打开的链接?@Shaireen:这是要打开的地址。你在浏览器中放在地址栏中的位呃。事实上,我有一个Html文件,只要点击按钮就可以打开。这个文件有要在外部浏览器中打开的地址。现在我想捕获该链接上的点击,只有这样我才能在外部打开它?怎么做?“IsupposedToopenInPhoneBrowser(e.Uri)”找不到属性。这意味着什么?如果您想在手机浏览器中打开URI之前验证/筛选它们,它只是一个假方法占位符…您可以不使用它。
private void Button_Click_1(object sender, RoutedEventArgs e)
{
WebBrowserTask webBrowserTask = new WebBrowserTask();
webBrowserTask.Uri = new Uri("http://www.someUrl.com");
webBrowserTask.Show();
}