Знаете ли вы, что добавить в код, чтобы открыть желаемую статью из RSS-ленты. В новой форме.Как открыть статью RSS-канала в новой форме?
В новой форме я должен получить название и содержание статьи, изображения не является обязательным
Вот мой код, где список статей:
private void ls_text_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
try
{
ListBox listBox = sender as ListBox;
if (listBox != null && listBox.SelectedItem != null)
{
SyndicationItem sItem = (SyndicationItem)listBox.SelectedItem;
if (sItem.Links.Count > 0)
{
if (listBox != null && listBox.SelectedItem != null)
{
SyndicationItem sItem = (SyndicationItem)listBox.SelectedItem;
PhoneApplicationService.Current.State["myItem"] = sItem;
NavigationService.Navigate(new Uri("/Clanak.xaml",UriKind.Relative));// leads to article form
}
}
}
catch (Exception f)
{
MessageBox.Show(f.Message, "", MessageBoxButton.OK);
}
}
Я написал код, который выполняет большую часть работы:
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
try
{
SyndicationItem sItem = PhoneApplicationService.Current.State["myItem"] as SyndicationItem;
PageTitle.Text = sItem.Title.Text; //Title would go in the pagetitle of the form , Title shows fine
PageTitle.FontSize = 40;
//tb_Content.Text = sItem.Summary.Text; //all goes fine
foreach (SyndicationItem item in sItem.SourceFeed.Items)
{
foreach (SyndicationElementExtension ext in item.ElementExtensions)
{
if (ext.GetObject<XElement>().Name.LocalName == "encoded")
tb_Content.Text = ext.GetObject<XElement>().Value; //textblock for content, throws NullReferenceException
}
}
}
catch (Exception f)
{
MessageBox.Show(f.Message, "Error clanak", MessageBoxButton.OK);
}
}
Содержимое не распознано, и я получаю NullReferen все время, когда я связывал Summary на TextBlock, дата статьи была показана в порядке. Также каждый раз, когда я собираюсь в списке, где перечислены все статьи, я получаю сообщение об ошибке «Вы можете использовать только состояние между OnNavigatedTo» и «OnNavigatedFrom». Когда я нажимаю кнопку «домой», появляется отладчик (сбой приложения).
Это то, что я получаю: Первый шанс исключение типа «System.InvalidOperationException» произошло в Microsoft.Phone.dll Первый шанс исключение из «System.Security.SecurityException» типа произошло в System.Runtime.Serialization .dll Первое случайное исключение типа «System.Reflection.TargetInvocationException» произошло в mscorlib.dll Первое случайное исключение типа «System.Security.SecurityException» произошло в System.Runtime.Serialization.dll Поток '' (0xfc2037a) вышел с кодом 0 (0x0). Поток '' (0xe880366) вышел с кодом 0 (0x0). Поток '' (0xe310372) вышел с кодом 0 (0x0). Поток '' (0xf970392) вышел с кодом 0 (0x0). Поток '' (0xe470392) вышел с кодом 0 (0x0).
Это ссылка, над которой я работаю: http://www.zimo.co/feed/ моей главной проблемой является то, как пройти мимо nullref. исключение и получить контент.
В настоящее время я Я ищу предложения или указатели. Может, кто-нибудь раньше пробовал что-то подобное? – Goran303