相关疑难解决方法(0)

在UWP WebView中显示本地html文件内容

我相信这是非常简单的任务,我在网上看到了很多例子,但是由于我遇到了不同的例外,它们中没有一个能为我工作.

HTML:

<html lang="en">
<head>
    <meta charset="utf-8" />
    <title></title>
</head>
<body>
    <p>
        Help html content.
    </p>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

XAML:

<Grid>
        <Grid.RowDefinitions>
            <RowDefinition/>
            <RowDefinition Height="30"/>
        </Grid.RowDefinitions>

        <WebView x:Name="webView" />
        <Button x:Name="buttonRefresh" 
                Grid.Row="1" 
                HorizontalAlignment="Center"
                Click="buttonRefresh_Click">
            Refresh
        </Button>
    </Grid>
Run Code Online (Sandbox Code Playgroud)

help.html在我的UWP应用程序LocalFolder中显示保存在文件中的静态html ,我已经尝试过以下操作:
- 使用Navigate方法:

private void buttonRefresh_Click(object sender, RoutedEventArgs e)
        {
            var uri = new Uri("ms-appdata:///local/help.html");
            webView.Navigate(uri);
        }
Run Code Online (Sandbox Code Playgroud)

结果是以下异常:

System.ArgumentException: Value does not fall within the expected range.
   at Windows.UI.Xaml.Controls.WebView.Navigate(Uri source)
   at SimpleUwpApp.Proxy.SimplerPage.buttonRefresh_Click(Object sender, RoutedEventArgs e)
Run Code Online (Sandbox Code Playgroud)


- 尝试在后面的代码中显式设置webView的Source属性:

private void buttonRefresh_Click(object sender, …
Run Code Online (Sandbox Code Playgroud)

c# webview uwp uwp-xaml

6
推荐指数
2
解决办法
7587
查看次数

在UWP WebView控件中显示本地图像

我需要编写代码,将一些HTML(通过其他方式从外部源接收)加载到WebView中,并显示此HTML中引用的图像.这些图像将存储在Windows.Storage.ApplicationData.Current.LocalFolder中的某处.

使用本地图像的建议都没有显示在webview for windows phone 8.1使用Webbrowser控件中的本地图像为我工作.如果我用web.NavigateToString(html)加载这样的HTML:

<html><head></head><body>A <img src="file:///c:/Users/idh/AppData/Local/Packages/d783af9f-88eb-42f5-ab0f-abb025f32baa_5cy2zb9g43kb2/LocalState/folder/image001.jpg"> B</body></html>
Run Code Online (Sandbox Code Playgroud)

我只是显示了AB.我在文件:,ms-appx:和相对路径而不是文件:等之后尝试了斜杠和反斜杠,双斜线和三斜线.图像永远不会显示.同时,如果我将其保存在HTML文件中并在我的应用程序之外打开它,它显示正常.我还成功保存并阅读了这些文件(它们实际上出现在该文件夹中,因为我的应用程序创建了它们,因此未经授权的访问不是问题).package.manifest确实包括专用网络.

我最好不要使用嵌入式base64,自定义uri解析器和其他特殊技术,因为我不是应用程序的实际开发人员.我创建了一个获取HTML并将图像保存到本地存储的库,现在我需要演示一个易于使用的方法来可视化WebView中存储的内容,就像我之前为普通.NET框架所做的那样.即我实际上是为我的库用户的开发人员编写示例,然后这些人将使用我的示例处理此HTML和图像.

作为最后的手段,我最终可以为我的样本的UWP版本编写base64或自定义解析器(而对于像普通.NET框架这样的其他平台,相同的过程要容易得多).但我想至少确保在源HTML中为图像选择正确的URL的直接途径是不可能的,我不会最终得到一些情况,我写了一些相当复杂的东西,然后有经验的UWP应用程序揭示了我过度设计了一些东西.即一些专家意见"不,在UWP中不可能,你必须使用base64嵌入或自定义URI解析"对我也有用.

c# webview uwp

5
推荐指数
1
解决办法
1761
查看次数

ms-appdata在哪里?

我正在构建一个现代的ui应用程序,并希望通过批处理文件,编写并定期更新可通过ms-appdata://winjs应用程序中的协议访问的数据.我有批处理文件来复制文件夹,但我找不到appdata的文件路径.

App1's appdata 的默认文件路径是什么?如何强制我的应用创建文件夹?

appdata winjs visual-studio-2013

3
推荐指数
1
解决办法
4602
查看次数

标签 统计

c# ×2

uwp ×2

webview ×2

appdata ×1

uwp-xaml ×1

visual-studio-2013 ×1

winjs ×1