Html 민첩성 팩을 사용하여 rss를 다운로드하고 목록에 요소 표시

c# html-agility-pack rss windows-phone xml

문제

나는 html 민첩성 팩을 사용하여 내 RSS 소스에서 다운로드 할 수 있습니다. 지금까지 바로 다운로드 할 수 있으며 SelectNode를 사용하여 모든 요소에 액세스 할 수 있습니다.하지만 어떻게하면 내 RSS에 제목이 있고 아이템 노드에 하나의 노드라고 말할 수 있습니까? , 나는 그것을 읽을 수 있지만 목록 상자에 그것을 나열하는 방법?!

나는 이것을 사용하여 RSS를 다운로드한다.

HtmlWeb.LoadAsync("http://www.wpnovosti.com/feeds/posts/default?alt=rss", DownLoadCompleted);

void DownLoadCompleted(object sender, HtmlDocumentLoadCompleted e)
    {
        if (e.Error == null)
        {
            HtmlDocument doc = e.Document;
            if (doc != null)
            {
                foreach (HtmlNode rsstitle1 in doc.DocumentNode.SelectNodes("//title")) 
                {
                    var title = doc.DocumentNode.SelectNodes("//title");

                    if (rsstitle1 != null)
                    {
                            string titleText = rsstitle1.InnerText;
                            rsstitle.Text = titleText;
                            //MessageBox.Show(titleText);
                    }
                }
            }
        }
    }

이 "rsstitle"은 mainpage의 요소입니다. listBox의 이름은 "listBox1"이고, textblock에서 strig titleText를 볼 수 있지만 마지막 항목 만 보았습니다. 다운로드 한 RSS 항목 목록 그래서 내 질문은 어떻게 모든 제목의 목록을 만들 수 있습니다. rss에서 XML은 다음과 같이 보입니다.

HtmlWeb.LoadAsync("http://www.wpnovosti.com/feeds/posts/default?alt=rss", DownLoadCompleted);

void DownLoadCompleted(object sender, HtmlDocumentLoadCompleted e)
    {
        if (e.Error == null)
        {
            HtmlDocument doc = e.Document;
            if (doc != null)
            {
                foreach (HtmlNode rsstitle1 in doc.DocumentNode.SelectNodes("//title")) 
                {
                    var title = doc.DocumentNode.SelectNodes("//title");

                    if (rsstitle1 != null)
                    {
                            string titleText = rsstitle1.InnerText;
                            rsstitle.Text = titleText;
                            //MessageBox.Show(titleText);
                    }
                }
            }
        }
    }

제목, 묘사, pubdate 및 연결 같이 동일한 안쪽 다른 25의 성분 기지 홀이있다. 나는 갖고 싶어 :

먼저 메인 페이지의 한 목록에있는 모든 제목.

둘째로 모든 링크가 제목에 바인딩되므로 사용자가 탭하면 다른 페이지로 이동하여 웹 브라우저 컨트롤에 URL을 전달할 수 있습니다.

셋째, 제목 아래에 짧은 설명을 할 수 있다면

넷째, 이미 다운로드 한 rss의 "description"요소에있는 게시물 본문을 보여주고 그림과 테이블과 같은 요소가 있기 때문에 rss에있는 요소를 그대로 둡니다.

인기 답변

Agility Pack (확실히 사용할 수 있음)을 사용하는 대신 RSS 피드를 구문 분석하고 조작하는 데 도움이되는 .NET 제공 클래스를 사용하는 것이 좋습니다. 나는 당신이 응용 프로그램의 RSS 리더 종류를 구축하려는 믿습니다. 샘플이 많으면 다음과 같은 링크가 도움이됩니다.

http://code.msdn.microsoft.com/wpapps/RSS-Reader-in-Windows-afa86457 http://mobile.dzone.com/articles/build-rss-reader-windows-phone

희망이 도움이됩니다.

이것이 귀하의 문제를 해결하면 알려주십시오.




아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.