private DevNewsPanel AddFeedPanel() { DevNewsPanel d = new DevNewsPanel(); int h = 15; foreach (Control c in pd.Controls) { h += 160; } d.Location = new Point(0, h); d.Width = pd.Width - 25; pd.Controls.Add(d); return(d); }
public void GetFeed() { Panel p = new Panel(); p.Location = new Point(); p.Dock = DockStyle.Fill; Label b = new Label(); b.Location = new Point(30, 30); b.ForeColor = Color.Blue; b.Text = "Loading Developer News..."; p.Controls.Add(b); sp.Panel2.Controls.Add(p); sp.Refresh(); string url = "https://vsstartpage.blob.core.windows.net/news/vs"; try { XmlReader reader = XmlReader.Create(url); SyndicationFeed feed = SyndicationFeed.Load(reader); reader.Close(); foreach (SyndicationItem item in feed.Items) { String subject = item.Title.Text.Trim(); String summary = item.Summary.Text.Trim(); String date = item.PublishDate.ToString().Trim(); String urls = item.Links[0].Uri.AbsoluteUri.Trim(); DevNewsPanel ps = AddFeedPanel(); ps.url = urls; ps.rb.AppendText(subject); ps.rb.AppendText("\n" + summary); ps.rb.AppendText("\n" + "NEW"); ps.rb.AppendText(" " + date); SetAsBold(subject, ps.rb); SetAsGrayed(date, ps.rb); SetAsRed("NEW", ps.rb); } } catch (Exception e) { } sp.Panel2.Controls.Remove(p); }