Catel.Services.ViewExportService.SaveToFile C# (CSharp) Method

SaveToFile() private method

The save to file.
private SaveToFile ( System.Windows.Media.Imaging.BitmapSource bitmap ) : void
bitmap System.Windows.Media.Imaging.BitmapSource The bitmap.
return void
        private void SaveToFile(BitmapSource bitmap)
        {
#if SILVERLIGHT
            _saveFileService.Filter = "BMP (*.bmp) |*.bmp";
            using (var stream = _saveFileService.DetermineFile())
            {
                if (stream != null)
                {
                    var writeableBitmap = new WriteableBitmap(bitmap);
                    var bitmapByteArray = ConvertWritableBitmapToByteArray(writeableBitmap);
                    stream.Write(bitmapByteArray, 0, bitmapByteArray.Length);
                }
            }
#else
            _saveFileService.Filter = "PNG (*.png) |*.png";
            if (_saveFileService.DetermineFile())
            {
                string fileName = _saveFileService.FileName;
                using (var stream = new FileStream(fileName, FileMode.Create))
                {
                    var encoder = new PngBitmapEncoder { Interlace = PngInterlaceOption.On };
                    encoder.Frames.Add(BitmapFrame.Create(bitmap));
                    encoder.Save(stream);
                }
            }
#endif
        }