private async Task UpdateSections() { if (LandingPageLinks == null) { using (var jsonStream = await StreamHelper.GetPackagedFileStreamAsync("landingPageLinks.json")) { var jsonString = await jsonStream.ReadTextAsync(); var links = JsonConvert.DeserializeObject <LandingPageLinks>(jsonString); var packageVersion = Package.Current.Id.Version; var resource = links.Resources.FirstOrDefault(item => item.ID == "app"); if (resource != null) { resource.Links[0].Title = $"Version {packageVersion.Major}.{packageVersion.Minor}.{packageVersion.Build}"; } LandingPageLinks = links; } var samples = new List <Sample>(); foreach (var newSample in LandingPageLinks.NewSamples) { var sample = await Samples.GetSampleByName(newSample); if (sample != null) { samples.Add(sample); } } NewSamples = samples; } }
private async Task UpdateSections() { if (LandingPageLinks == null) { using (var jsonStream = await StreamHelper.GetPackagedFileStreamAsync("landingPageLinks.json")) { var jsonString = await jsonStream.ReadTextAsync(); LandingPageLinks = JsonConvert.DeserializeObject <LandingPageLinks>(jsonString); } var patterns = new List <Pattern>(); foreach (var newPattern in LandingPageLinks.NewPatterns) { var pattern = await Patterns.GetPatternByName(newPattern); if (pattern != null) { patterns.Add(pattern); } } NewPatterns = patterns; } foreach (var section in LandingPageLinks.Resources.Reverse()) { var stackPanel = new StackPanel() { MinWidth = 267, Margin = new Thickness(0, 0, 0, 48) }; stackPanel.Children.Add( new TextBlock() { FontSize = 20, FontFamily = new Windows.UI.Xaml.Media.FontFamily("Segoe UI"), Text = section.Title }); stackPanel.Children.Add( new ItemsControl() { Margin = new Thickness(0, 16, 0, 0), ItemsSource = section.Links, ItemTemplate = Resources["LinkTemplate"] as DataTemplate }); ResourcesSection.Items.Insert(0, stackPanel); } }