我按照本指南创建了一个rss阅读器
http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh487167(v=vs.92).aspx
但我想使用Web浏览器控件来打开feed而不是WebBrowserTask。我怎样才能实现它?
注意:我正在使用C#
答案 0 :(得分:0)
参考您的链接。您可以遵循以下方法:
在页面上创建webBrowser控件。称之为"webBrowser"
使用webBrowser.Navigate(uri);
代替以下三种陈述
WebBrowserTask webBrowserTask = new WebBrowserTask();
webBrowserTask.Uri = uri;
webBrowserTask.Show();
在函数feedListBox_SelectionChanged
中。希望它有所帮助。
答案 1 :(得分:0)
像这样调用webBrowser.xaml页面
NavigationSerivce.Navigate(new Uri("<webBrowser.xaml path>?url="+url,UriKind.Relative));
<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));
}
}
请检查编译错误。它应该工作
答案 2 :(得分:0)
要阻止自动刷新,请在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;
}
}