2012-11-05 14 views

cevap

13

sürece dosya uygulaması paketinin bir parçası, örneğin olduğu gibi bir dosyadan yükleyebilirsiniz:

WebView2.Source = new Uri("ms-appx-web:///assets/text.html"); 

WebView

WebView.Navigate itibaren kullanarak uygulamanın paketinden içeriği yükleyebilirsiniz ms-appx-web: //, http/https kullanarak ağdan veya NavigateToString kullanarak dizesinden. İçerik, uygulamanın veri depolama biriminden içerik yükleyemiyor. Intranete erişmek için, uygulama bildiriminde ilgili uygunluk açık olmalıdır. Bir 'rastgele' dosya için

, sana sonra dosyayı seçmek bir dizeye okuyup NavigateToString kullanmak dosya seçiciyi kullanarak kullanıcı istemi herhalde, ancak kullanıcı deneyimi size ne bağlı biraz garip olabilir Başarmaya çalışıyor. Ben uzun zamandır bu sorunun çalışıyordu ve bunu yapmak için bir yol bulmuş

+0

ile açabilirim Alıntı ve bağlantı artık bir eşleşme olduğunu sanmıyorum. – Torleif

3

: İlk başta InstalledLocation klasörüne kaydetmek gerekir. Yeni bir html dosyası oluşturma seçeneği değil varsa sadece benim örnek içine file.CopyAsync(htmlFolder, fname + ".html"); Bak kullanabilirsiniz:

StorageFolder htmlFolder = await Windows.ApplicationModel.Package.Current.InstalledLocation.CreateFolderAsync(@"HtmlFiles", CreationCollisionOption.GenerateUniqueName); 
IStorageFile file = await htmlFolder .CreateFileAsync(fname + ".html", CreationCollisionOption.GenerateUniqueName); 

ve kolayca .html dosyasını açabilirsiniz daha:

var fop = new FileOpenPicker(); 
fop.FileTypeFilter.Add(".html"); 
var file = await fop.PickSingleFileAsync(); 
if (file != null) 
{ 
    string myPath = file.Path.Substring(file.Path.IndexOf("HtmlFiles")); 
    myWebview.Navigate(new Uri("ms-appx-web:///" + myPath)); 
} 

hatırla Sadece sadece InstalledLocation dan ms-appx-web:///