我按照本指南创建了一个 RSS 阅读器
http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh487167(v=vs.92).aspx
但我想使用 Web 浏览器控件而不是 WebBrowserTask 打开提要。我怎样才能实现它?
注意:我使用的是 C#
我按照本指南创建了一个 RSS 阅读器
http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh487167(v=vs.92).aspx
但我想使用 Web 浏览器控件而不是 WebBrowserTask 打开提要。我怎样才能实现它?
注意:我使用的是 C#
参考您的链接。您可以遵循以下方法:
在您的页面上创建一个 webBrowser 控件。叫它说"webBrowser"
使用webBrowser.Navigate(uri);
代替以下三个语句
WebBrowserTask webBrowserTask = new WebBrowserTask();
webBrowserTask.Uri = uri;
webBrowserTask.Show();
在函数中feedListBox_SelectionChanged
。希望能帮助到你。
像这样调用 webBrowser.xaml 页面
NavigationSerivce.Navigate(new Uri("<webBrowser.xaml path>?url="+url,UriKind.Relative));
在 webBrowser.xaml 上
<Grid x:Name="ContentPanel" Grid.Row="1" >
<phone:WebBrowser IsScriptEnabled="True" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Name="browser" />
</Grid>
在 webBrowser.xaml.cs 上做:
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
String url = NavigationContext.QueryString["url"];
if (!String.IsNullOrEmpty(url))
{
browser.Navigate(new Uri(url));
}
}
请检查编译错误。它应该工作
为防止自动刷新,请在您的webBrowser.xaml.cs
String _oldUrl;
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
String url = NavigationContext.QueryString["url"];
if(url!=_oldUrl)
{
if (!String.IsNullOrEmpty(url))
{
browser.Navigate(new Uri(url));
}
_oldUrl = url;
}
}