WebBrowser控制和loadfinish

时间:2013-07-17 08:19:01

标签: windows-phone-7 windows-phone-8 webbrowser-control

我正在将字符串加载到WebBrowser控件,如下所示:

ArticleContent.NavigateToString("<p style='font-size:20px; font-weight:bold;'>" +article.Title + "</p><br/>" + article.Text);

article.Title and article.Text只是HTML字符串。

因此,当我导航到此页面时,我正在尝试显示加载图标:

LoadingIcon.Visibility = Visibility.Visible;

然后在将数据加载到WebBrowser控件后,我禁用加载图标:

ArticleContent.NavigateToString("<p style='font-size:20px; font-weight:bold;'>" + article.Title + "</p><br/>" + article.Text);
loadingIcon.Visibility = Visibility.Collapsed;

问题是加载图标的禁用时间早于WebBrowser内容显示。是否有任何事件要处理内容加载或某事......

编辑:

事件NAVIGATED有效,但也有一点延迟...

1 个答案:

答案 0 :(得分:1)

.net代码无法直接知道嵌入式浏览器何时完成呈现其内容。

如果您渲染了整个HTML文档,则可以使用DOM上的onload事件来了解它何时完成渲染。在那种情况下,您可以使用window.external.Notify()回调您的.net代码来执行一项功能,该功能将改变控件的可见性。
它有点冗长,但会在内容呈现之前避免显示控件。