■ IDataObject 인터페이스를 사용해 파일 Drag & Drop을 처리하는 방법을 보여준다.
▶ 예제 코드 (XAML)
1 2 3 4 5 6 7 |
<Grid x:Name="dropGrid" AllowDrop="True"> ... </Grid> |
▶ 예제 코드 (C#)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
using System.IO; using System.Windows; ... this.dropGrid.Drop += new DragEventHandler(dropGrid_Drop); ... #region 드롭 그리드 드롭시 처리하기 - dropGrid_Drop(sender, e) /// <summary> /// 드롭 그리드 드롭시 처리하기 /// </summary> /// <param name="sender">이벤트 발생자</param> /// <param name="e">이벤트 인자</param> private void dropGrid_Drop(object sender, DragEventArgs e) { IDataObject dataObject = e.Data; if(dataObject.GetDataPresent(DataFormats.FileDrop)) { FileInfo[] fileInfoArray = dataObject.GetData(DataFormats.FileDrop) as FileInfo[]; foreach(FileInfo fileInfo in fileInfoArray) { // 드롭한 파일들을 처리한다. } } } #endregion |