使用Webview在Windows 8上下载

4

我希望您能帮助我翻译一个问题。我想从webview下载一个PDF/ZIP格式的文件,但是我在互联网上找不到任何解决方案/教程,我尝试查找webview属性类。
我有一个webview:

WebView x:Name="webviewIntranet" Grid.Row="1" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" />

我的方法:

public IntranetPage()
{
   webviewIntranet.Navigate(new Uri("http://www.testme.com"));
           this.InitializeComponent();
}

我能够展示网页内容,但是当我尝试下载/点击下载一些文件时却没有任何反应。
3个回答

3
首先阅读有关WebView控件的新特性的内容,请参阅以下链接: http://blogs.windows.com/windows/b/appbuilder/archive/2013/07/17/what-s-new-in-webview-in-windows-8-1.aspx 正如您所看到的,WebView处理不同的浏览器事件:它不支持显示除网页以外的任何内容,但是对于这些内容,将触发WebView.UnviewableContentIdentified事件。 http://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.xaml.controls.webview.unviewablecontentidentified.aspx 然后,您可以使用文件关联将其抛给操作系统(或通过uri对文件进行所需操作...我希望如此)。
void webView1_UnviewableContentIdentified(WebView sender, 
    WebViewUnviewableContentIdentifiedEventArgs args)
{
    Windows.Foundation.IAsyncOperation<bool> b = 
    Windows.System.Launcher.LaunchUriAsync(args.Uri);
}

1

WebView 无法下载文件。微软试图不将其作为 IE 浏览器的替代品,而是一种新型浏览器。请参阅 MSDN 论坛中的 answer


0

我认为你可以做到这一点,但需要进行相当多的手动干预。使用像BackgroundDownloader这样的工具,可以下载文件的URI。如果你想要拦截web视图导航,那么有一些解决方法可供选择;例如:这里


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接