Paint.EmailSender.SendImage C# (CSharp) Method

SendImage() public method

public SendImage ( string filename ) : void
filename string
return void
        public void SendImage(string filename)
        {
            this.emailComposerView = new MFMailComposeViewController();
            this.emailComposerView.SetSubject(LanguageStrings.EmailSenderMessage);
            this.emailComposerView.SetMessageBody(LanguageStrings.EmailSenderBody, false);

            UIImage img = UIImage.FromFile(filename);
            this.emailComposerView.AddAttachmentData(img.AsPNG(), "image/png", "image.png");

            this.emailComposerView.Finished += (sender, e) => {
                e.Controller.InvokeOnMainThread(() => {
                    e.Controller.DismissViewController(true, null);
                });
            };

            this.parentController.PresentViewController(this.emailComposerView, true, null);
        }

Usage Example

 /// <summary>
 /// Offers the option to email the image to someone
 /// </summary>
 /// <param name='pictureId'>
 /// ID of the picture we wish to email
 /// </param>
 private void SendEmail(Guid pictureId)
 {
     var filenameResolver = this.CreateFilenameResolver(pictureId);
     var emailSender = new EmailSender(this);
     emailSender.SendImage(filenameResolver.MasterImageFilename);
 }