> Bit newBit = (Bit)e.Data.GetData(typeof(Bit)); >>
>> //This code is on a toolbar of the form >> private void toolStripButton2_MouseDown(object sender, MouseEventArgs e) >> { >> Bit XIC = new Bit(); >> XIC.BitType = Enums.bitType.NormallyClosed; >> DoDragDrop(XIC, DragDropEffects.Copy); >> } >>>>
>> //This code is on the user controlthat is on the form >> private void Rung_DragDrop(object sender, DragEventArgs e) >> { >> Rung targetRung = (Rung)sender; >> if( e.Data.GetDataPresent(typeof(Bit))) >> >> { >> Bit newBit = new Bit(); >> newBit.BitType = (Enums.bitType)e.Data.GetData("BitType"); // this is where my code breaks or I should say never runs. >> newBit.Location = targetRung._ConnectionPoint; >> >> this.Controls.Add(newBit); >> Elements.Add(newBit); >> this.VisualCueImage.Visible = false; >> >> } >> >> } >>>>
>>>private Control PickedUpControl; >>>private Panel TargetArea; >>> >>>this.TargetArea.AllowDrop = true; >>> >>>private void DragControl_MouseDown(object sender, System.MouseEventArgs e) >>>{ >>> this.PickedUpControl = (Control)sender; >>> this.PickedUpControl.DoDragDrop(sender, DragDropEffects.Move); >>>} >>>private void TargetArea_DragEnter(object sender, System.Windows.Forms.DragEventArgs e) >>>{ >>> e.Effect = DragDropEffects.All; >>>} >>>private void TargetArea_DragDrop(object sender, System.Windows.Forms.DragEventArgs e) >>>{ >>> this.TargetArea.Controls.Add(this.PickedUpControl); >>> Point xy = this.TargetArea.PointToClient(new Point(e.X, e.Y)); >>> this.PickedUpControl.Location = xy; >>>} >>> >>>// The DragOver event is often redundant, but can be used to show the object moving >>>private void TargetArea_DragOver(object sender, System.Windows.Forms.DragEventArgs e) >>>{ >>> e.Effect = DragDropEffects.All; >>> Point xy = this.PointToClient(new Point(e.X+1, e.Y+1)); >>> this.PickedUpControl.Location = xy; >>>} >>>>>>
>>>private void TargetArea_DragDrop(object sender, System.Windows.Forms.DragEventArgs e) >>>{ >>> Point pt = this.TargetArea.PointToClient(new Point(e.X, e.Y)); >>> Control ToControl = this.TargetArea.GetChildAtPoint(pt); >>> >>> ToControl.Text = this.PickedUpControl.Text; >>>} >>>>>>