Drag and Drop Image : Drag Move : GUI Windows Forms C# Examples


C# Examples » GUI Windows Forms » Drag Move »

 

Drag and Drop Image








    
using  System;
using  System.Drawing;
using  System.Collections;
using  System.ComponentModel;
using  System.Windows.Forms;
using  System.Data;

public  class  ImageDragDrop  :  System.Windows.Forms.Form
{
    private  System.ComponentModel.Container  components  =  null;

    private  bool    isDragging  =  false;
    private  int      oldX,  oldY;

    Rectangle  dropRect  =  new  Rectangle(100,  100,  150,  150);

    private  PictureBox  picBox  =  new  PictureBox();

    public  ImageDragDrop()
    {
        InitializeComponent();
        CenterToScreen();

        picBox.SizeMode  =  PictureBoxSizeMode.StretchImage;
        picBox.Location  =  new  System.Drawing.Point(64,  32);
        picBox.Size  =  new  System.Drawing.Size(50,  50);
        picBox.Image  =  new  Bitmap("YourFile.bmp");
        picBox.MouseDown  +=  new  MouseEventHandler(picBox_MouseDown);
        picBox.MouseUp  +=  new  MouseEventHandler(picBox_MouseUp);
        picBox.MouseMove  +=  new  MouseEventHandler(picBox_MouseMove);
        picBox.Cursor  =  Cursors.Hand;

        Controls.Add(picBox);
    }

    protected  override  void  Dispose(  bool  disposing  )
    {
        picBox.Dispose();
        if(  disposing  )
        {
            if  (components  !=  null)  
            {
                components.Dispose();
            }
        }
        base.Dispose(  disposing  );
    }


    private  void  InitializeComponent()
    {
        this.AutoScaleBaseSize  =  new  System.Drawing.Size(5,  13);
        this.ClientSize  =  new  System.Drawing.Size(292,  273);
        this.Name  =  "ImageDragDrop";
        this.Text  =  "Dragging  Images";
        this.Paint  +=  new  System.Windows.Forms.PaintEventHandler(this.ImageDragDrop_Paint);

    }

    [STAThread]
    static  void  Main()  
    {
        Application.Run(new  ImageDragDrop());
    }

    private  void  picBox_MouseDown(object  sender,  MouseEventArgs  e)  
    {
        isDragging  =  true;
        oldX  =  e.X;
        oldY  =  e.Y;
    }

    private  void  picBox_MouseMove(object  sender,  MouseEventArgs  e)  
    {
        if  (isDragging)  
        {
            picBox.Top  =  picBox.Top  +  (e.Y  -  oldY);

            picBox.Left  =  picBox.Left  +  (e.X  -  oldX);
        }
    }

    private  void  picBox_MouseUp(object  sender,  MouseEventArgs  e)  
    {
        isDragging  =  false;

        if(dropRect.Contains(picBox.Bounds))
        {
            MessageBox.Show("Message",  "In  Rectangle");
        }
    }

    private  void  ImageDragDrop_Paint(object  sender,  System.Windows.Forms.PaintEventArgs  e)
    {
        Graphics  g  =  e.Graphics;
        g.FillRectangle(Brushes.Purple,  dropRect);

        g.DrawString("Drop  Image  Here..",  new  Font("Times  New  Roman",  25),Brushes.Yellow,  dropRect);
    }
}
    
   
  
   




HTML code for linking to this page:

Follow Navioo On Twitter

C# Examples

 Navioo GUI Windows Forms
» Drag Move