Xamarin 带有本地内容的表单WebView未触发导航事件
我已经实现了HybridWebView 我想检测页面何时完成加载,但导航事件似乎没有触发Xamarin 带有本地内容的表单WebView未触发导航事件,xamarin,webview,xamarin.forms,Xamarin,Webview,Xamarin.forms,我已经实现了HybridWebView 我想检测页面何时完成加载,但导航事件似乎没有触发 <?xml version="1.0" encoding="utf-8" ?> <ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" xmlns:lib="clr-n
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:lib="clr-namespace:Xam.Forms.MyStuff"
x:Class="Xam.Forms.MyStuff.HybridWebView">
<ContentPage.Content>
<lib:HybridWebView x:Name="hybridWebView" Uri="index.html"
Navigated="HybridWebView_Navigated"
HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand"/>
</ContentPage.Content>
</ContentPage>
为什么导航事件没有触发?是否因为源内容是本地加载的,而不是使用实际的URL?如果是这样,是否有其他方法可以检测本地源html文件何时完成加载
我甚至可以在单个渲染器中检测它。创建元素并在特定于平台的渲染器中捕获事件。以下示例适用于UWP,但该模式也适用于iOS和Android 在OnElementChanged事件中,创建本机WebView元素并分配事件处理程序:
if(Control == null)
{
var webView = new Windows.UI.Xaml.Controls.WebView();
{
webView.Navigate(uri);
};
webView.NavigationStarting += WebView_NavigationStarting;
}
private void WebView_NavigationStarting(Windows.UI.Xaml.Controls.WebView sender, Windows.UI.Xaml.Controls.WebViewNavigationStartingEventArgs args) {}
创建事件处理程序:
if(Control == null)
{
var webView = new Windows.UI.Xaml.Controls.WebView();
{
webView.Navigate(uri);
};
webView.NavigationStarting += WebView_NavigationStarting;
}
private void WebView_NavigationStarting(Windows.UI.Xaml.Controls.WebView sender, Windows.UI.Xaml.Controls.WebViewNavigationStartingEventArgs args) {}