Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles
(untagged)

Drag and Drop text containing file in textbox.

0.00/5 (No votes)
27 Sep 2007 1  
You can drag and drop text file or any other file which contains text in textbox.

Introduction

In many of application we need drag and drop functionality; in that same context this article helps you to drag and drop text containing file in to text box. This is a simplest method which I found for text file drag and drop. In case of drag and drop Microsoft .NET has provided support by may properties to control, events and methods.

In this application you can drag and drop a file which may of any extension but contains text in it. For text container I used textbox. For performing drag and drop I handled DragEnter, DragDrop event of TextBox and the AllowDrop property.

Property

AllowDrop

This property is set to true for any control for which we want drag and drop support. This control may be a TextBox which holds data.

Events

DragEnter

This event is fired whenever the mouse with a pressed left button will enter into a control's region. At that time, the control's DragEnter event is fired. Generally, we require to check the type of data available, which is done as follows.

private void txtFileContent_DragEnter(object sender, DragEventArgs e)
{
    // If file is dragged, show cursor "Drop allowed"

    if (e.Data.GetDataPresent(DataFormats.FileDrop))
        e.Effect = DragDropEffects.Copy;
    else
    e.Effect = DragDropEffects.None;
}

DragDrop

This event is fired when the left mouse button is released by the user and the user intends to drop data on the target control. Generally, the target control accepts data here as follows.

private void txtFileContent_DragDrop(object sender, DragEventArgs e)
{
    try
    { 
        Array a = (Array) e.Data.GetData(DataFormats.FileDrop);
        if(a != null)
        {
            string s = a.GetValue(0).ToString();
            this.Activate();
        OpenFile(s);
        }
    }
    catch(Exception ex)
    {
        MessageBox.Show("Error in DragDrop function: " + ex.Message);
    }
}

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here