私はリストボックスに名前を持つファイルのリストを持っていて、その内容はSQLテーブルに格納されており、私のアプリのユーザーはリストボックス内のファイル名の1つ以上を選択してデスクトップにドラッグできるようにしたい、デスクトップ上の実際のファイルを生成します。私はこれを行う方法に関するドキュメントを見つけることができません。誰か説明したり、説明を指摘できますか?.net winformsアプリケーションからデスクトップにドラッグするファイルを実装しますか?
追加: 私はDragLeaveイベントを処理することでこの作業を行うことができました。そこでは、選択した名前と内容をSQL Serverから取得した一時ディレクトリにファイルを作成します。私は、そのオブジェクトにファイルへのパスを置く:
var files = new string[1];
files[0] = "full path to temporary file";
var dob = new DataObject();
dob.SetData(DataFormats.FileDrop, files);
DoDragDrop(dob, DragDropEffects.Copy);
しかし、これは非常に非効率的と不器用なようだ、と私はまだ蓄積された一時ファイルを取り除くための良い方法を考え出したていません。
私はこれを理解していますが、私が理解していないのは、foo.txtが作成され、SQLテーブルの内容で埋められるところです。 – mlo
"c:/foo.txt"を追加することは可能ですが、ドラッグが終了したら "new foo.txt"のような新しいファイル名でファイルをドロップしますか? – Nooneelse