投稿者 kmkm  (社会人) 投稿日時 2009/9/9 06:29:53
TextBox1から2にドラッグ&ドロップで文字列をムーブしたいと思って、
以下のようにしたのですが、コピーと同じように、TextBox1に文字列が
残ったままとなってしまいます。
ムーブなので、元の文字列(TextBox1.Text)が消えてほしいのです。
どのようにすればよいのでしょうか。

ちなみに、ワードパッドのテキストは、TextBox2にドロップすると、
ちゃんとワードパッド側で消えてくれます。

    Private Sub TextBox2_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles TextBox2.DragDrop
        TextBox2.Text = e.Data.GetData(GetType(String))
    End Sub

    Private Sub TextBox2_DragEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles TextBox2.DragEnter
        If e.Data.GetDataPresent(GetType(String)) Then
            'e.Effect = DragDropEffects.Copy
           e.Effect = DragDropEffects.Move
        End If
    End Sub

    Private Sub TextBox1_MouseDown(ByVal sender As Object, ByVal e As    System.Windows.Forms.MouseEventArgs) Handles TextBox1.MouseDown
       'TextBox1.DoDragDrop(TextBox1.Text, DragDropEffects.Copy)
        TextBox1.DoDragDrop(TextBox1.Text, DragDropEffects.Move)
    End Sub

なお、環境はVista、VB2008EEです。