初めてのC#その3

ちょいと脱線して、.net frameworkを利用した、Windows Form Applicationの勉強中。
今日は、Drag & Dropの実装。
単に"DragDrop"のイベントハンドラーを実装するだけでは、NG。

  • フォームのプロパティで"AllowDrop"を"True"に
  • フォームの"DragEnter"に以下を実装
private void onForm1DragEnter(object sender, DragEventArgs e)
{
    if ( e.Data.GetDataPresent( DataFormats.FileDrop ) )
        e.Effect = DragDropEffects.All;
    else
        e.Effect = DragDropEffects.None;
}
  • フォームの"DragDrop"に以下を実装
private void onForm1DragDrop(object sender, DragEventArgs e)
{
    string[] stringFilename = (string[]) e.Data.GetData(DataFormats.FileDrop, false);
}

これでstringFilename[]にDrag & Dripしたファイル名が入る。