private void InitList() { var media = new MediaLibrary(); var list = media.Pictures; List<MediaLibraryThumbnailedImage> imgSources = new List<MediaLibraryThumbnailedImage>(); foreach (var pic in list) { imgSources.Add(new MediaLibraryThumbnailedImage(pic)); } mediaViewer.Items = new ObservableCollection<object>(imgSources); media.Dispose(); media = null; }
public static void SaveToPictureLiabray(this UIElement contentToSaveToImage, string folder, string fileName, int width, int height) { using (System.IO.IsolatedStorage.IsolatedStorageFile file = System.IO.IsolatedStorage.IsolatedStorageFile.GetUserStoreForApplication()) { if (!file.DirectoryExists(folder)) { file.CreateDirectory(folder); } string path = folder + "//" + fileName; using (System.IO.IsolatedStorage.IsolatedStorageFileStream stream = file.OpenFile(path, System.IO.FileMode.OpenOrCreate)) { new WriteableBitmap(contentToSaveToImage, null).SaveJpeg(stream, width, height, 0, 0x55); stream.Close(); MediaLibrary library = new MediaLibrary(); using (System.IO.IsolatedStorage.IsolatedStorageFileStream stream2 = file.OpenFile(path, System.IO.FileMode.Open, System.IO.FileAccess.Read)) { library.SavePicture(fileName, stream2); library.Dispose(); } } } }
private void SaveImageToCameraRoll(int imageHandle, String imageName, Resource imageResource) { MediaLibrary library = new MediaLibrary(); MemoryStream targetStream = new MemoryStream(); int mediaType = MoSync.Constants.MA_MEDIA_TYPE_IMAGE; int mediaHandle = imageHandle; int eventReturnCode = MoSync.Constants.MA_MEDIA_RES_OK; try { WriteableBitmap data = (WriteableBitmap)imageResource.GetInternalObject(); data.SaveJpeg(targetStream, data.PixelWidth, data.PixelHeight, 0, 100); data = null; library.SavePictureToCameraRoll(imageName, targetStream.GetBuffer()).Dispose(); } catch (Exception e) { System.Diagnostics.Debug.WriteLine(e.ToString()); eventReturnCode = MoSync.Constants.MA_MEDIA_RES_IMAGE_EXPORT_FAILED; } finally { library.Dispose(); targetStream.Dispose(); PostMediaEvent(mediaType, mediaHandle, eventReturnCode); } }
private static List<SongEx> GetActualSongList() { var list = new List<SongEx>(); MediaLibrary lib = new MediaLibrary(); if (lib != null) { uint hMediaList = InteropSvc.InteropLib.Instance.ZMediaLibrary_GetSongs(); int count = lib.Songs.Count; for (int x = 0; x < count; x++) { var song = lib.Songs[x]; if (!song.IsProtected) { var songEx = new SongEx(song); uint hash = InteropSvc.InteropLib.Instance.ZMediaList_GetHash(hMediaList, x); string hashStr = String.Format("{0:X}", hash).PadLeft(8, '0'); string path = "\\My Documents\\Zune\\Content\\" + hashStr.Substring(0, 4) + "\\" + hashStr.Substring(4, 2) + "\\" + hashStr.Substring(6, 2); if (InteropSvc.InteropLib.Instance.GetFileAttributes7(path + ".mp3") != 0xFFFFFFFFU) { path += ".mp3"; } else { path += ".wma"; } songEx.FilePath = path; list.Add(songEx); } } InteropSvc.InteropLib.Instance.ZMediaList_Release(hMediaList); lib.Dispose(); list.Sort(new SongExComparer()); } return list; }
protected async override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e) { if (e.NavigationMode != System.Windows.Navigation.NavigationMode.Back) { if (this.NavigationContext.QueryString.ContainsKey("FileName")) { WorkingDesignName = string.Empty; App.ExitCall = false; OpenFlyer(this.NavigationContext.QueryString["FileName"]); } } else if (e.NavigationMode == System.Windows.Navigation.NavigationMode.Back) { if (App.SaveFileName != "" && App.FromWhere == "SaveHolo") { if (App.SaveType == "H") // Save as Hologram { SaveFlyer(App.SaveFileName); WorkingDesignName = App.SaveFileName; //ApplicationTitle.Text = "DESIGNER :: " + App.SaveFileName; if (App.ExitCall == true) { App.ExitCall = false; NavigationService.GoBack(); } } else if (App.SaveType == "I") // Save as Image { MemoryStream ms = new MemoryStream(); WriteableBitmap wbmpThumbnail = new WriteableBitmap(this.ContentPanel, null); wbmpThumbnail.SaveJpeg(ms, wbmpThumbnail.PixelWidth, wbmpThumbnail.PixelHeight, 0, 100); ms.Seek(0, 0); MediaLibrary mediaLibrary = new MediaLibrary(); Picture pic = mediaLibrary.SavePicture(App.SaveFileName + ".jpg", ms); mediaLibrary.Dispose(); pic.Dispose(); ms.Flush(); ms.Close(); ms.Dispose(); } else if (App.SaveType == "C") // Save in Cloud { if (App.SaveFileName.EndsWith(".4dh")) WorkingDesignName = App.SaveFileName; else WorkingDesignName = App.SaveFileName + ".4dh"; SaveFlyer(WorkingDesignName); //ApplicationTitle.Text = "DESIGNER :: " + App.SaveFileName; if (App.ExitCall == true) { App.ExitCall = false; NavigationService.GoBack(); } using (IsolatedStorageFile myIsolatedStorage = IsolatedStorageFile.GetUserStoreForApplication()) { using (IsolatedStorageFileStream stream = myIsolatedStorage.OpenFile(WorkingDesignName, FileMode.Open,FileAccess.Read,FileShare.Read)) { try{ //LiveOperationResult res = await App.client.BackgroundUploadAsync("me/skydrive", new Uri("/shared/transfers/" + WorkingDesignName, UriKind.Relative), OverwriteOption.Overwrite); var res = await App.client.UploadAsync("me/skydrive", WorkingDesignName, stream, OverwriteOption.Overwrite); //InfoText.Text = "File " + WorkingDesignName + " uploaded"; myIsolatedStorage.DeleteFile(WorkingDesignName); } catch (Exception){} } } } } else if (App.SaveFileName == "" && App.FromWhere == "SaveFlyer") { if (App.ExitCall == true) { App.ExitCall = false; //App.ChangesSaved = false; NavigationService.GoBack(); } } } App.SaveType = "H"; App.FromWhere = ""; base.OnNavigatedTo(e); }