私はTreeViewを持つWinFormsアプリケーションを持っています。ユーザーはWindowsExplorerからTreeViewにファイルをドラッグすることができます。その後、ファイルをWindowsExplorerにドラッグすると、ファイルが削除された場所にファイルがコピーされます。私がしようとしているのは、ファイルが削除されているディレクトリにファイルがすでに存在する場合、コピーするファイル/フォルダの名前を事前にコピーして、衝突がないようにしたいということです。ファイルがWindowsエクスプローラにドロップされると、どのように検出できますか?
ファイルをWindowsExplorerにコピーする方法は次のとおりです。 treeViewのItemDragで、選択したノードのノードをループし、それを配列にパッケージ化します。その後、私はこのコードを使用します。
var dataObject = new DataObject(DataFormats.FileDrop, files.ToArray());
dataObject.SetData(DataFormats.StringFormat, dataObject);
DoDragDrop(dataObject, DragDropEffects.Copy);
これはうまく動作しますが、Windowsのエクスプローラにオフで発送後は、それは私の手からです。どのようにファイルがコピーされるのか、いつどこでコピーされて変更されるのかを見つけることができますか?これは可能ですか?
これを行うには、この記事(http://www.codeproject.com/KB/shell/explorerdragdrop.aspx)を参照してください。それは助けるかもしれない。 – Kirtan