我的通用Windows应用程序需要使用webview控件加载html文件。我在这个问题中尝试了以下解决方案。我无法使它发挥作用。
Load local html file in WebView Metro Style app
现在我的代码如下。它给我一个错误如下
错误CS4036' IAsyncOperation'不包含 ' GetAwaiter'的定义没有扩展方法' GetAwaiter' 接受类型' IAsyncOperation'的第一个参数。 可以找到(你错过了一个using指令吗? '系统'?)ReaderX c:\ users \ sumod \ documents \ visual studio 2015 \ Projects \ ReaderX \ ReaderX \ Views \ TextView.xaml.cs 28
这是我的代码
namespace ReaderX.Views
{
/// <summary>
/// An empty page that can be used on its own or navigated to within a Frame.
/// </summary>
public sealed partial class TextView : Page
{
private NavPoints point;
public TextView()
{
this.InitializeComponent();
}
protected override async void OnNavigatedTo(NavigationEventArgs e)
{
point = (NavPoints)e.Parameter;
StorageFolder storageFolder = ApplicationData.Current.LocalFolder;
StorageFile sampleFile = await storageFolder.GetFileAsync("sample.txt");
var html = await Windows.Storage.FileIO.ReadTextAsync(sampleFile);
HTMLViewer.NavigateToString(html);
}
}
}
还有其他办法吗?
答案 0 :(得分:5)
嘿,如果你有时间告诉我这是否有效:
在Assets文件夹中创建名为MyHTMLPage的Html文件,它具有类型内容的构建操作和复制到输出以始终复制。
Html文件:
function pollingFunc(taskId){
$.ajax({
url: '/endpoint',
type: 'POST',
data: { 'celery_task_id': taskId },
success: function(response){
if(response.celery_ready) {
console.log('CELERY IS READY')
} else {
console.log('polling')
setTimeout(function() {
pollingFunc(response.task_id);
}, 5000);
}
});
}
在主页面上:xaml:
<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<div style="background-color: chartreuse">HELLO WORLD, from a webview</div>
</body>
</html>
在主页面上:
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<WebView x:Name="MyWebView" Width="200" Height="300"></WebView>
</Grid>
这对你有用吗?
答案 1 :(得分:0)
代码示例适合我。你尝试过新项目了吗?我确信您的参考文献存在问题。
尝试逐个删除您的参考文献以找到罪魁祸首。