UWP 拖拽事件
DragOver
private void GridView_DragOver(object sender, DragEventArgs e) { e.AcceptedOperation = DataPackageOperation.Copy; }
Drop
private async void GridView_Drop(object sender, DragEventArgs e) { var item = await e.DataView.GetStorageItemsAsync(); if (item.Any()) { var file = item[0] as StorageFile; var types = new[] { ".mp3", ".wav",".m4a" }; if (types.Contains(file.FileType)) { MediaPlayer.Stop(); StorageFolder folder = ApplicationData.Current.LocalFolder; var files = await folder.GetFilesAsync(); foreach (var storageFile in files) { await storageFile.DeleteAsync(); } //uwp不能访问电脑上的路径,所以要复制到uwp的运行目录下 var newFile = await file.CopyAsync(folder, file.Name, NameCollisionOption.GenerateUniqueName); MediaPlayer.SetSource(await newFile.OpenAsync(FileAccessMode.Read), ""); } } }
浙公网安备 33010602011771号