WP8浏览器控件只显示一个空页面

时间:2014-06-16 10:47:32

标签: c# windows-phone-8 webbrowser-control

我尝试将隔离存储中的html文件加载到wp8应用程序中的webbrowser控件上。但它只显示一个空页面。 我试图在我的机器的IE浏览器中打开相同的文件,我收到了警报 Internet Explorer限制此网页运行脚本或Activex控件以及选项AllowBloackedContent。如果我按下允许按钮,它会在IE浏览器上呈现html页面。 那么我需要对我的WP8浏览器控件进行哪些更改才能从隔离存储加载html文件。 我的xaml是

   <phone:WebBrowser  IsScriptEnabled="True" Grid.Row="0"  x:Name="extrasBrowserControl">
    </phone:WebBrowser>

在我使用的代码中

    Uri uri = new Uri(filepath, UriKind.RelativeOrAbsolute);
        IsolatedStorageFile myIsolatedStorage = IsolatedStorageFile.GetUserStoreForApplication();
        if (myIsolatedStorage.FileExists(uri.ToString()))
        {
            extrasBrowserControl.Source = uri;
            extrasBrowserControl.Visibility = Visibility.Visible;
   }

我还尝试将html文件的内容作为字符串读取,并使用extrasBrowserControl.NavigateToString(..)加载。但我仍然只能在浏览器上看到字符串。 我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

您可以尝试将文件内容作为字符串读取,并使用webbrowser的函数.NavigateToString(yourString)。如果文档尊重Html格式,它应该可以工作。

     using (IsolatedStorageFile isoStore = IsolatedStorageFile.GetUserStoreForApplication())
        {
            using (StreamReader reader = new StreamReader(new IsolatedStorageFileStream("myHtmlFile.txt", FileMode.OpenOrCreate, isoStore)))
            {
               string text = reader.ReadToEnd();
               extrasBrowserControl.Visibility = Visibility.Visible;
               extrasBrowserControl.NavigateToString(text);

               reader.Close();
               reader.Dispose();
            }
            isoStore.Dispose();

        }