private CustomImageWraper GetTemplate(byte[] bytea, string name = null, bool hasClose = true) { string filename = name ?? "file" + Guid.NewGuid().ToString("N") + counter++; CustomImageWraper wraper = new CustomImageWraper(filename, thumbnailWidth); Image image = new Image { Aspect = Aspect.AspectFill, Source = ImageSource.FromStream(() => { return(new MemoryStream(bytea)); }), GestureRecognizers = { recognizer } }; AbsoluteLayout.SetLayoutBounds(image, new Rectangle(0, 0, 1, 1)); AbsoluteLayout.SetLayoutFlags(image, AbsoluteLayoutFlags.All); wraper.Children.Add(image); if (hasClose) { Button closeBtn = new Button { ClassId = filename, Style = (Style)HelperFunctions.GetResourceValue("FupThumbCloseButton") }; closeBtn.Clicked += CloseBtn_Clicked; AbsoluteLayout.SetLayoutBounds(closeBtn, new Rectangle(0.95, 0.05, AbsoluteLayout.AutoSize, AbsoluteLayout.AutoSize)); AbsoluteLayout.SetLayoutFlags(closeBtn, AbsoluteLayoutFlags.PositionProportional); wraper.Children.Add(closeBtn); } return(wraper); }
public void AppendToGallery(string filename, byte[] bytea) { CustomImageWraper thumbnail = GetTemplate(bytea, filename, false); Container.Children.Add(thumbnail); ToggleGalleryBG(); }
private void AppendToGallery(MediaFile media) { byte[] bytea = HelperFunctions.StreamToBytea(media.GetStream()); CustomImageWraper thumbnail = GetTemplate(bytea); if (controlType == FupControlType.DP) { Container.Children.Clear(); Files.Clear(); } Container.Children.Add(thumbnail); Files.Add(thumbnail.Name, bytea); ToggleGalleryBG(); }