예제 #1
0
        /// <summary>
        /// Handles the Load event of the Page control.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param>
        protected void Page_Load(object sender, EventArgs e)
        {
            // ensure the username is valid
            if (string.IsNullOrEmpty(Username))
            {
                return;
            }

            // retrieve contents
            var url    = string.Format(FEED_URL, Username);
            var vidXml = XDocument.Load(url);

            if (vidXml == null)
            {
                return;
            }

            // parse to collection
            var query = from t in vidXml.Descendants("item") select new { Url = t.Element("link").Value, Title = t.Element("title").Value, Thumbnail = ToThumbnail(t.Element("link").Value) };

            // empty set?
            if (query.Count() == 0)
            {
                return;
            }

            // bind, limiting count
            YouTubeRepeater.DataSource = query.Take(MaxVideos);
            YouTubeRepeater.DataBind();
        }
예제 #2
0
        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);
            EnsureChildControls();

            // bind links
            HeaderLink.Text        = Username;
            HeaderLink.NavigateUrl = FooterLink.NavigateUrl = string.Concat("http://www.youtube.com/", Username);

            // ensure the username is valid
            if (string.IsNullOrEmpty(Username))
            {
                return;
            }

            // retrieve contents
            var url    = string.Format(FEED_URL, Username);
            var vidXml = XDocument.Load(url);

            if (vidXml == null)
            {
                return;
            }

            // parse to collection
            var query = from t in vidXml.Descendants("item") select new { Url = t.Element("link").Value, Title = t.Element("title").Value, Thumbnail = ToThumbnail(t.Element("link").Value) };

            // empty set?
            if (query.Count() == 0)
            {
                return;
            }

            // bind, limiting count
            YouTubeRepeater.ItemDataBound += new RepeaterItemEventHandler(YouTubeRepeater_ItemDataBound);
            YouTubeRepeater.DataSource     = query.Take(MaxVideos);
            YouTubeRepeater.DataBind();
        }