2009-11-11 3 views
0

나는이를 사용하여이 작업을 할 수없는 것 :Windows Explorer에서 ListView로 폴더를 드래그하고 파일을로드하려면 어떻게합니까?

private void listView1_DragEnter(object sender, DragEventArgs e) 
    { 
     if (e.Data.GetDataPresent(DataFormats.FileDrop)) 
     { 
      e.Effect = DragDropEffects.Copy; 
     } 
    } 

    private void listView1_DragDrop(object sender, DragEventArgs e) 
    { 
     string[] directoryName = (string[])e.Data.GetData(DataFormats.FileDrop); 
     string[] files = Directory.GetFiles(directoryName[0]); 

     foreach (string file in files) 
     { 
      if (Path.GetExtension(file) == ".mp3") 
      { 
       listView1.Items.Add(file); 
      } 
     } 
    } 

마우스 커서가 서명하지 보여줍니다 난 내 프로그램 폴더를 삭제할 수 없습니다.

답변

3

ListViewAllowDrop 속성을 True로 설정 했습니까?

DragEnter 이벤트가 발생 했습니까?

+0

대부분 'listView1.AllowDrop = true;'를 설정하지 않는 것이 범인입니다. – TheVillageIdiot

관련 문제