ユーザーがファイルを Windowsエクスプローラー からアプリケーションウィンドウ( Windowsフォーム フォーム)にドラッグする必要があるアプリケーションを開発しています。 C#でファイルのファイル名、パス、その他のプロパティを読み取る方法はありますか?
DragDropイベントをキャッチして、そこからファイルを取得できます。何かのようなもの:
void Form_DragDrop(object sender, DragEventArgs e)
{
string[] fileList = (string[])e.Data.GetData(DataFormats.FileDrop, false);
//more processing
}
2つのイベントを使用する必要があります1)DragDrop 2)DragEnter
また、パネル/フォームの「AllowDrop」プロパティをtrueに有効化します。
private void form_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
{
e.Effect = DragDropEffects.Copy;
}
else
{
e.Effect = DragDropEffects.None;
}
}
private void form_DragDrop(object sender, DragEventArgs e)
{
string[] filePaths= (string[])e.Data.GetData(DataFormats.FileDrop, false);
}