This is for Web platform projects. Watch the control work in the image below:
Download the project here: Click this link for a direct download!
What this project does is use a set of WebContainerControl controls to accept and allow for dragging – although the actual act of dragging is not supported, I used the Event Handler code for MouseDown on a “row” control to send the pertinent data (WebStyle, Label1.Text, control name, parent name, and Enabled status) to the webpage named q’s properties. Then on the Drop event handler for the q’s designated drop box, I triggered a Method contained in the control’s Super form (that is, the container control that exists before it is dragged into q).
The Method then harvests the data from q’s set of properties, embeds a “row” container as a new container control instance, and disables the dragged control within its parent container.
The disabling of the control within a parent container was done by assigning the parent’s name and the dragged control’s name to a property reserved for that within the webpage named q.
To indicate to the user that controls were disabled, I created copies of each of the styles used in the set of controls and altered the opacity of the copies, showing a faded-out look when the control that was dragged is “used.”
I hope this helps!