private void LoadModulesAnnouncements(Module pModule) { XmlDocument xDoc = new XmlDocument(); xDoc.Load("XML_Files\\Announcements.xml"); int announcementId = 50; string announcementTitle = null; string announcementBody = null; int posterId = 50; DateTime dateTimePosted = DateTime.Now; foreach (XmlNode node in xDoc.DocumentElement) { string announcementIdString = node.Attributes[0].InnerText; List <Comment> announcementsComments = new List <Comment>(); try { announcementId = Convert.ToInt32(announcementIdString); } catch { MessageBox.Show("Announcement ID couldn't be converted to int"); } foreach (XmlNode childNode in node.ChildNodes) { if (childNode.NodeType == XmlNodeType.Element && childNode.Name == "title") { announcementTitle = childNode.InnerText; } if (childNode.NodeType == XmlNodeType.Element && childNode.Name == "body") { announcementBody = childNode.InnerText; } if (childNode.NodeType == XmlNodeType.Element && childNode.Name == "posterID") { try { posterId = Convert.ToInt32(childNode.InnerText); } catch { MessageBox.Show("Poster ID couldn't be converted to int"); } } if (childNode.NodeType == XmlNodeType.Element && childNode.Name == "dateTimePosted") { try { dateTimePosted = Convert.ToDateTime(childNode.InnerText); } catch { MessageBox.Show("DateTime Posted couldn't be converted to DateTime"); } } if (childNode.NodeType == XmlNodeType.Element && childNode.Name == "comments") { XmlDocument commentsDoc = new XmlDocument(); commentsDoc.Load("XML_Files\\Comments.xml"); foreach (XmlNode commentNode in childNode.ChildNodes) { Comment loadedComment = LoadAnnouncementComments(commentNode.InnerText, commentsDoc, announcementId); if (loadedComment != null) { announcementsComments.Add(loadedComment); } } } } Announcement loadedAnnouncement = new Announcement(announcementId, announcementTitle, announcementBody, posterId, dateTimePosted); foreach (Comment comment in announcementsComments) { loadedAnnouncement.addComment(comment); } pModule.loadAnnouncement(loadedAnnouncement); } }
private void AnnouncementsBox_SelectionChanged(object sender, SelectionChangedEventArgs e) { currentlySelectedAnnouncement = (Announcement)AnnouncementsBox.SelectedItem; ChangeSelectedAnnouncement(currentlySelectedAnnouncement); FillCommentsBox(currentlySelectedAnnouncement); }
public void loadAnnouncement(Announcement pAnnouncement) { announcements.Add(pAnnouncement); }
private void ChangeSelectedAnnouncement(Announcement pAnnouncement) { PosterTextBlock.Text = pAnnouncement.Poster.Name; TitleTextBlock.Text = pAnnouncement.Title; BodyTextBlock.Text = pAnnouncement.Body; }