Beispiel #1
0
        void OpenMojangFeedItem(object sender, RoutedEventArgs e)
        {
            MojangFeedItem mitem = ((sender as Button).Parent as Grid).Parent as MojangFeedItem;
            string         data  = mitem.Data;

            MojangFeedContentPlaceholder = new UIElement[grdMojangFeed.Children.Count];
            grdMojangFeed.Children.CopyTo(MojangFeedContentPlaceholder, 0);
            grdMojangFeed.Children.Clear();

            MojangFeedDisplay feeddisp = new MojangFeedDisplay();

            feeddisp.Title_Text.Text = mitem.TitleText.Content as string;
            feeddisp.web.NavigateToString("<style>body { font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif; };</style>" + data);
            feeddisp.BackButton.Click += CloseMojangFeedItem;

            grdMojangFeed.Children.Add(feeddisp);
        }
Beispiel #2
0
        private void ParseMojangXml(string Path)
        {
            try
            {
                App.Log("Loading mojang feed from: " + Path);
                XmlReader       rssr = XmlReader.Create(Path);
                SyndicationFeed feed = SyndicationFeed.Load(rssr);

                App.InvokeAction(delegate { App.mainWindow.lstMojangFeed.Items.Clear(); });
                //App.Log("Loaded items: ");
                foreach (SyndicationItem item in feed.Items.Take(30))
                {
                    //App.Log(item.Id);
                    MojangFeedItem feeditem = null;
                    App.InvokeAction(delegate
                    {
                        feeditem = new MojangFeedItem();
                        feeditem.TitleText.Content = item.Title.Text;
                        XElement x             = item.ElementExtensions.First(p => p.OuterName == "encoded").GetObject <XElement>();
                        feeditem.Data          = x.Value;
                        feeditem.DateText.Text = item.PublishDate.ToString("d");
                    });
                    App.InvokeAction(delegate
                    {
                        App.mainWindow.lstMojangFeed.Items.Add(feeditem);
                        feeditem.TitleText.Click += OpenMojangFeedItem;
                    });
                }
                rssr.Close();
                //App.Log("Load of feed: " + Path + " complete!");
            }
            catch (Exception ex)
            {
                App.Log("Error while loading mojang feed from: " + Path + " , Error: " + ex.ToString());
            }
        }