忍者ブログ

えいりあす

Windowsフォームアプリケーション で TextBox に ドラッグアンドドロップ できるようにする方法

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

コメント

ただいまコメントを受けつけておりません。

Windowsフォームアプリケーション で TextBox に ドラッグアンドドロップ できるようにする方法

先日、作成したMMO自動上げツールですが、
実はURLを入力するときにドラッグアンドドロップでも入力できるようになっています。

ただこのD&Dを実装するときに、少しだけ躓いたので
デザイン側の設定やプログラムのソースをメモしておきます。


0.環境

  • VisualStudio 2012

1.TextBoxのプロパティを変更する


上図のようにTextBoxのプロパティを開いて、
動作」の項目にある「AllowDrop」をTrueにします。

2.TextBoxにイベントを追加する


TextBoxのプロパティを開き、
上図の赤丸のような雷マークをクリックします。

2.1DragEnterイベントの追加


TextBoxのイベントを開いたら、
上図の赤丸部分、「ドラッグ アンド ドロップ」の「DragEnter」を
ダブルクリックします。

すると、恐らく次のようなコードが生成されるので、

このDragEnterメソッドに
e.Effect = DragDropEffects.Copy;
と入力します。

これでDragEnterイベントの設定は終わりです。

2.2DragDropイベントの追加


再び、TextBoxのイベントを開きます。
そして、上図の赤丸部分、「ドラッグ アンド ドロップ」の「DragDrop」を
ダブルクリックし、コードを生成させます。

次のように生成された次のDragDropメソッドに

コーディングしていきます。

ドラッグアンドドロップされたテキストは
e.Data.GetData(DataFormats.Text)で取得できます。

なので、TextBoxにドラッグアンドドロップされたテキストを
TextBoxに表示させるには、
textBox1.Text = (string)e.Data.GetData(DataFormats.Text);
となります。


以上です。

ちなみに今回の例では文字コードが異なる文字のD&D及び、
ファイルをD&Dした場合についての動作は考慮してないです。

拍手[0回]

コメント

プロフィール

HN:
忘れ傘
性別:
男性
自己紹介:
Linux初心者
知識が浅すぎるので勉強中
あっぷろーだ:wasuregasa
ついったー:@__TIMESTAMP__

P R

最新コメント

[03/27 NONAME]
[03/26 ぽん]
[03/26 ぽん]
[03/17 ぽん]
[03/05 通りすがりのR]