Пример #1
0
        public void Update(AdaptiveBlockContent block, AdaptiveBlock sourceBlock, PreviewBlockHostViewModel args)
        {
            TextBlockTitle.Text     = block.Title;
            TextBlockSubtitle.Text  = block.Subtitle ?? sourceBlock.View.Attributes.AttributionText?.Text ?? args.AppName;
            TextBlockTimestamp.Text = "Opened " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString();

            var img = block.GetIconImageOrBestFit();

            if (img != null)
            {
                ImageOrIcon.Source = img.CreateImageSource();
            }
            else
            {
                var attrIcon = sourceBlock.View.Attributes.AttributionIcon?.GetIconForTheme(AdaptiveThemes.Dark);
                if (attrIcon != null)
                {
                    ImageOrIcon.Source = attrIcon.CreateImageSource();
                }
                else
                {
                    ImageOrIcon.Source = args.GetAppLogoImageSource();
                }
            }
        }
Пример #2
0
        public void Update(AdaptiveBlockContent block, AdaptiveBlock sourceBlock, PreviewBlockHostViewModel args)
        {
            DataContext = block;

            var icon = block.GetIconImageOrBestFit();

            if (icon?.Url != null)
            {
                IconImageBrush.ImageSource = new BitmapImage(new Uri(icon.Url));
                IconImage.Visibility       = Visibility.Visible;

                IconImage.Margin = new Thickness(icon.Hints.Category.Contains(AdaptiveBlockImageCategoryHints.Icon) ? 8 : 0);

                if (icon.BackgroundColor != null)
                {
                    //IconBackground.Fill = new SolidColorBrush(icon.BackgroundColor);
                }
                else
                {
                    IconBackground.Fill = new SolidColorBrush(Colors.LightGray);
                }
            }
            else
            {
                IconImage.Visibility = Visibility.Collapsed;
            }

            var actions = block.GetSimplifiedActions();

            if (actions.Any())
            {
                Buttons.Visibility = Visibility.Visible;

                FirstButton.Text = actions.First().Title;

                if (actions.Count() > 1)
                {
                    MoreButton.Visibility = Visibility.Visible;
                }
                else
                {
                    MoreButton.Visibility = Visibility.Collapsed;
                }
            }
            else
            {
                Buttons.Visibility = Visibility.Collapsed;
            }
        }