public static List <FileContent> DropOutlookAttachment(this DragEventArgs e) { if (!e.CanHandleOutlookAttachment()) { return(null); } List <FileContent> response = new List <FileContent>(); OutlookDataObject dataObject = new OutlookDataObject(e.Data); string[] filenames = (string[])dataObject.GetData("FileGroupDescriptor"); MemoryStream[] filestreams = (MemoryStream[])dataObject.GetData("FileContents"); for (int fileIndex = 0; fileIndex < filenames.Length; fileIndex++) { string filename = filenames[fileIndex]; MemoryStream filestream = filestreams[fileIndex]; byte[] data = ReadFully(filestream); response.Add(new FileContent(filename, data)); } return(response); }
public static List<Tuple<string, byte[]>> DropOutlookAttachment(this DragEventArgs e) { if (!e.CanHandleOutlookAttachment()) return null; List<Tuple<string, byte[]>> response = new List<Tuple<string, byte[]>>(); OutlookDataObject dataObject = new OutlookDataObject(e.Data); string[] filenames = (string[])dataObject.GetData("FileGroupDescriptor"); MemoryStream[] filestreams = (MemoryStream[])dataObject.GetData("FileContents"); for (int fileIndex = 0; fileIndex < filenames.Length; fileIndex++) { string filename = filenames[fileIndex]; MemoryStream filestream = filestreams[fileIndex]; byte[] data = ReadFully(filestream); response.Add(new Tuple<string,byte[]>(filename, data)); } return response; }