DigitalFormDocumentShell.cs 964 B

1234567891011121314151617181920212223242526272829
  1. using System;
  2. using System.IO;
  3. using System.Linq;
  4. using InABox.Core;
  5. using InABox.Mobile;
  6. using Xamarin.Forms;
  7. namespace PRS.Mobile
  8. {
  9. public class DigitalFormDocumentShell : Shell<DigitalFormModel, DigitalFormDocument>, IDocumentShell
  10. {
  11. protected override void ConfigureColumns(ShellColumns<DigitalFormModel, DigitalFormDocument> columns)
  12. {
  13. columns
  14. .Map(nameof(EntityID), x => x.EntityLink.ID)
  15. .Map(nameof(FileName), x => x.DocumentLink.FileName)
  16. .Map(nameof(_thumbnail), x => x.Thumbnail);
  17. }
  18. public Guid EntityID => Get<Guid>();
  19. public String FileName => Get<String>();
  20. private byte[] _thumbnail => Get<byte[]>();
  21. public ImageSource Thumbnail => ImageSource.FromStream(() => new MemoryStream(_thumbnail));
  22. public DigitalFormShell Form => Parent.Items.FirstOrDefault(x => Guid.Equals(x.ID, ID));
  23. }
  24. }