Ejemplo n.º 1
0
        private void OnLoaded(object sender, RoutedEventArgs routedEventArgs)
        {
            var tile = AdaptiveTile.CreateTile();
            var binding = TileBinding.Create(TemplateType.TileWide);
            binding.Branding = Branding.None;

            var header = new Text("You have mail") {Style = TextStyle.Body};
            var content = new Text("Someone likes you!") {Style = TextStyle.Caption};
            var logo = new TileImage(ImagePlacement.Inline)
            {
                Source = "http://fc02.deviantart.net/fs71/i/2013/359/a/4/deadpool_logo_1_fill_by_mr_droy-d5q6y5u.png"
            };

            var logoSubGroup = new SubGroup {Width = 40};
            logoSubGroup.AddImage(logo);

            var subgroup = new SubGroup();
            subgroup.AddText(header);
            subgroup.AddText(content);

            binding.Add(logoSubGroup);
            binding.Add(subgroup);

            tile.Tiles.Add(binding);
            var xml = tile.GetXml();

            if (string.IsNullOrEmpty(xml))
            {

            }
        }
Ejemplo n.º 2
0
 public void AddImage(TileImage tileImage)
 {
     _items.Add(tileImage);
 }
Ejemplo n.º 3
0
        private void MainPage_Loaded(object sender, RoutedEventArgs e)
        {
            var tile = AdaptiveTile.CreateTile();

            #region for wide tile with background 

            var wideBinding = TileBinding.Create(TemplateType.TileWide);
            wideBinding.Branding = Branding.NameAndLogo;
            var wideLogo = new TileImage(ImagePlacement.Background)
            {
                Source = "http://fc02.deviantart.net/fs71/i/2013/359/a/4/deadpool_logo_1_fill_by_mr_droy-d5q6y5u.png"
            };
            //background/peek images need to be at the root of the binding;
            wideBinding.BackgroundImage = wideLogo;

            var wideHeader = new Text("You have mail") { Style = TextStyle.Body };
            var wideContent = new Text("Someone likes you!") { Style = TextStyle.Caption };

            var wideSubgroup = new SubGroup();
            wideSubgroup.AddText(wideHeader);
            wideSubgroup.AddText(wideContent);

            wideBinding.AddSubgroup(wideSubgroup, true);

            #endregion

            #region square tile 

            var binding = TileBinding.Create(TemplateType.TileMedium);
            binding.Branding = Branding.None;

            var header = new Text("You have mail") { Style = TextStyle.Body, WrapText = true };
            var content = new Text("Someone likes you!") { Style = TextStyle.Caption, IsSubtleStyle = true, WrapText = true, Alignment = Alignment.Center };
            var logo = new TileImage(ImagePlacement.Inline)
            {
                Source = "http://fc02.deviantart.net/fs71/i/2013/359/a/4/deadpool_logo_1_fill_by_mr_droy-d5q6y5u.png"
            };

            var imageSubgroup = new SubGroup()
            {
                Width = 20
            };
            imageSubgroup.AddImage(logo);


            var subgroup = new SubGroup();
            subgroup.AddText(header);
            subgroup.AddText(content);

            binding.AddSubgroup(imageSubgroup);
            binding.AddSubgroup(subgroup);

            #endregion

            // Add the types of tile bindings to the tile.
            tile.Tiles.Add(wideBinding);
            tile.Tiles.Add(binding);

            var notification = tile.GetNotification();

            TileUpdateManager.CreateTileUpdaterForApplication().Update(notification);

        }
Ejemplo n.º 4
0
 public void AddImage(TileImage tileImage)
 {
     _items.Add(tileImage);
 }
Ejemplo n.º 5
0
        internal async Task<bool> PinAsync(DetailPageViewModel detailPageViewModel)
        {
            // prepare content

            var header = new Text("Template 10")
            {
                Style = TextStyle.Subtitle
            };

            var content = new Text(detailPageViewModel.Value)
            {
                Style = TextStyle.Caption,
                WrapText = true
            };

            var logo = new TileImage(ImagePlacement.Inline)
            {
                Source = "https://raw.githubusercontent.com/Windows-XAML/Template10/master/Assets/Template10.png"
            };

            // build tile

            var tile = AdaptiveTile.CreateTile(string.Empty);
            var binding = TileBinding.Create(TemplateType.TileWide);
            binding.Branding = Branding.Name;

            var sub1 = new SubGroup { Width = 33 };
            binding.Add(sub1);
            sub1.AddImage(logo);

            var sub2 = new SubGroup();
            binding.Add(sub2);
            sub2.AddText(header);
            sub2.AddText(content);

            tile.Tiles.Add(binding);

            // show tile

            var tileId = detailPageViewModel.ToString();

            if (!await IsPinned(detailPageViewModel))
            {
                // initial pin
                var secondaryTile = new SecondaryTile(tileId)
                {
                    Arguments = detailPageViewModel.Value,
                    DisplayName = "Detail page",
                    VisualElements =
                        {
                            Square44x44Logo = new Uri("ms-appx:///Assets/Logo.png"),
                            Square150x150Logo = new Uri("ms-appx:///Assets/Logo.png"),
                            Wide310x150Logo = new Uri("ms-appx:///Assets/Logo.png"),
                            Square310x310Logo = new Uri("ms-appx:///Assets/Logo.png"),
                            ShowNameOnSquare150x150Logo = true,
                        },
                };
                if (!await secondaryTile.RequestCreateAsync())
                {
                    System.Diagnostics.Debugger.Break();
                    return false;
                }
            }

            // update pin
            var xml = tile.GetNotification().Content;
            xml.DocumentElement.RemoveAttribute("version");
            var value = xml.GetXml();
            var tileUpdater = TileUpdateManager.CreateTileUpdaterForSecondaryTile(tileId);
            var tileNotification = new TileNotification(xml);
            tileUpdater.Update(tileNotification);

            return true;
        }