Exemple #1
0
        private static void Enqueue(IImageUriRenderer renderer, UriPicture picture, Int32 priority)
        {
            if ((picture == null) || !picture.IsAvailable)
            {
                return;
            }

            if (!picture.UseAsyncPattern)
            {
                renderer.UriContent = new ImageUriContent(picture.Size, picture.GetUri());
            }
            else
            {
                PictureProcessor.Enqueue(new UriPictureRequest(renderer, picture), priority);
            }
        }
Exemple #2
0
        public async Task <Boolean> ProcessAsync(TaskFactory imageRenderingTaskFactory)
        {
            var removeFromQueue = true;
            var pictureUri      = Picture.UseAsyncPattern ? await Picture.GetUriAsync().ConfigureAwait(false) : Picture.GetUri();

            if (IsValid)
            {
                await imageRenderingTaskFactory.StartNew(() => Renderer.UriContent = new ImageUriContent(Picture.Size, pictureUri)).ConfigureAwait(false);
            }
            return(removeFromQueue);
        }