Drag and drop inside a container : Drag Drop « GUI Windows Form « C# / C Sharp






Drag and drop inside a container

Drag and drop inside a container

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

public class Form1 : System.Windows.Forms.Form
{
  internal System.Windows.Forms.Label lblDragger;
  public Form1()
  {
    InitializeComponent();
  }

  private void InitializeComponent()
  {
    this.lblDragger = new System.Windows.Forms.Label();
    this.SuspendLayout();
    // 
    // lblDragger
    // 
    this.lblDragger.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
    this.lblDragger.Image = new Bitmap("winter.jpg");
    this.lblDragger.Location = new System.Drawing.Point(110, 105);
    this.lblDragger.Name = "lblDragger";
    this.lblDragger.Size = new System.Drawing.Size(72, 56);
    this.lblDragger.TabIndex = 2;
    this.lblDragger.MouseUp += new System.Windows.Forms.MouseEventHandler(this.lblDragger_MouseUp);
    this.lblDragger.MouseMove += new System.Windows.Forms.MouseEventHandler(this.lblDragger_MouseMove);
    this.lblDragger.MouseDown += new System.Windows.Forms.MouseEventHandler(this.lblDragger_MouseDown);
    // 
    // Form1
    // 
    this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
    this.ClientSize = new System.Drawing.Size(292, 266);
    this.Controls.AddRange(new System.Windows.Forms.Control[] {
                                    this.lblDragger});
    this.Name = "Form1";
    this.Text = "Fake Drag And Drop";
    this.ResumeLayout(false);

  }

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


  private bool isDragging = false;


  private int clickOffsetX, clickOffsetY;


  private void lblDragger_MouseDown(System.Object sender, System.Windows.Forms.MouseEventArgs e)
  {
    isDragging = true;
    clickOffsetX = e.X;
    clickOffsetY = e.Y;
  }

  private void lblDragger_MouseUp(System.Object sender, System.Windows.Forms.MouseEventArgs e)
  {
    isDragging = false;
  }

  private void lblDragger_MouseMove(System.Object sender,
    System.Windows.Forms.MouseEventArgs e)
  {
    if (isDragging == true)
    {
      lblDragger.Left = e.X + lblDragger.Left - clickOffsetX;
      lblDragger.Top = e.Y + lblDragger.Top - clickOffsetY;
    }
  }

}


           
       








Related examples in the same category

1.Image Drop
2.Drag and drop image to another windowDrag and drop image to another window
3.Drag and drop the PictureBoxDrag and drop the PictureBox
4.Fake Drag And DropFake Drag And Drop