【C#】ドラッグアンドドロップでパスを渡すテキストボックスの作り方

エクスプローラからフォルダをドラッグアンドドロップすると、そのフォルダへのパスが表示されるテキストボックスの作り方。

まず、テキストボックスのプロパティ

・AllowDrop

をTrueにします。

それから、テキストボックスのイベント

・DragDrop

・DragEnter

を有効にします。

そしてDragDropには下記のコードを追加します。

        private void textBoxPath_DragDrop(object sender, DragEventArgs e)
        {
            if (!e.Data.GetDataPresent(DataFormats.FileDrop)) return;

            string[] dragFilePathArr = (string[])e.Data.GetData(DataFormats.FileDrop, false);
            textBoxPath.Text = dragFilePathArr[0];

        }

DragEnterには下記のコードを追加します。

        private void textBoxPath_DragEnter(object sender, DragEventArgs e)
        {
            e.Effect = DragDropEffects.All;
        }

これで出来上がり。

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です