2012-12-02 6 views
5

次のDataGridの名前はgridOperationsです。私がtrueにAllowDropを設定し、次のコードを使用していますDataGridViewのDragnDropファイル

private void gridOperations_DragDrop(object sender, DragEventArgs e) 
{ 

    if (e.Data.GetDataPresent(DataFormats.FileDrop)) 
    { 
     var files = (string[])e.Data.GetData(DataFormats.FileDrop); 
     foreach (var filePath in files) 
     { 
      MessageBox.Show(filePath); 
     } 
    } 

} 

private void gridOperations_DragEnter(object sender, DragEventArgs e) 
{ 
    if (e.Data.GetDataPresent(DataFormats.FileDrop)) 
     e.Effect = DragDropEffects.All; 
    else 
     e.Effect = DragDropEffects.None; 
} 

を私はDataGridにファイルをドラッグしようとすると、それは私に「STOP」にカーソルを提供します。私は間違って何をしていますか?

Listにバインドされている可能性がありますか?

私が必要とするのは、ファイルからファイルを取得して、データグリッドにドラッグし、ドラッグしたセルを確定することです。

+2

確認するには、 'AllowDrop'を' DataGridView'に設定してください。私は親フォームがドラッグアンドドロップを許可できるので頼みます。 –

+0

私も同様の問題に直面しており、私の場合はAllowDropをtrueに設定していませんでした。 – mihirj

+0

@Kristianコミュニティがあなたを助けてくれるようにするには、あなたの問題に関する詳細を提供する必要があります。 –

答えて

1

グリッドとすべての親コントロールが有効になっていますか?

あなたのコードは正しいものであり、動作します。私が考えることができるのは、GridViewが有効になっていない可能性があることだけです。アプリケーションの実行中にをクリックして、グリッドの現在の行を変更できますか?