我正在使用C#在Windows窗体项目中使用groupbox
作为容器并向其中添加项(Labels
,pictureBoxes
...)。我想知道是否可以在此控件上实现拖放事件以使用鼠标移动项目,或者如果必须在添加到我的groupBox
的控件中实现此事件。在组盒子中拖拽
Q
在组盒子中拖拽
0
A
回答
1
关于我的话题了一些研究之后,我发现与我的一个朋友帮助解决。为了完成这个任务,我们需要使用一些变量,属性和三个鼠标事件来分配给这些对象:MouseMove,MouseUp和MouseDown。我最近也发现了一个例子:http://social.msdn.microsoft.com/Forums/en-US/winforms/thread/6eb864ff-0ea8-4641-bc2a-83db94371429
0
这段代码是用来复制一个控件(在这里我们已经完成了Button的操作,你可以通过改变Button类到DragDrop事件中的任何其他类)到一个groupbox。
首先将Groupbox的“AllowDrop”属性设置为true。
groupBox5.AllowDrop=true;
从属性窗口创建GROUPBOX一个 “dragEnter事件” 事件
private void groupBox5_DragEnter(object sender, DragEventArgs e)
{
e.Effect = DragDropEffects.Move;
}
接下来,从属性窗口创建GROUPBOX一个 “的DragDrop” 事件
private void groupBox5_DragDrop(object sender, DragEventArgs e)
{
Control c = e.Data.GetData(e.Data.GetFormats()[0]) as Control;
// Declare rnd globally for creating random id for dynamic button(eg : Random rnd = new Random();)
Button btn = new Button();
btn.Name = "Button" + rnd.Next();
btn.Size = c.Size;
btn.Click += new System.EventHandler(DynamicButton_Click);
if (c != null)
{
btn.Text = c.Text;
btn.Location = this.groupBox5.PointToClient(new Point(e.X, e.Y));
this.groupBox5.Controls.Add(btn);
}
}
相关问题
- 1. 锤子拖拽中心
- 2. jQuery可拖拽/可拖拽
- 3. 可拖拽的位置在可拖拽
- 4. 可拖拽的元素在拖拽的页面中拖动
- 5. jQuery可拖拽/可拖拽目标组件
- 6. iOS上的JQ UI可拖拽:启动拖拽处理程序中的拖拽
- 7. jQuery UI的拖拽,拖拽父DIV
- 8. Drag Drag拖拽时添加拖拽
- 9. java2D棋子在棋盘上拖拽
- 10. 在android中拖拽n拖放textview
- 11. 在组件之间拖拽n掉落
- 12. jQuery可拖拽+可拖拽 - 物理移动拖拽项目到被拖拽的容器
- 13. 拖拽UIButtons
- 14. 拖拽textview
- 15. jquery拖拽框
- 16. 元件拖拽
- 17. 拖拽事件
- 18. 可可:如何在拖拽时变形拖拽图像
- 19. Jquery拖放 - 无法拖拽
- 20. 拖拽照片和沙盒应用程序
- 21. Ext.container.Viewport中可拖拽Extjs Ext.grid.Panel
- 22. 拖拽NetBeans Java组件为新的LaF
- 23. 只读(但可拖拽)组合框
- 24. jQuery动态拖拽
- 25. TTPhotoViewController - 禁用拖拽
- 26. objective-c在UIButton中禁用拖拽
- 27. 在Raphael中委托拖拽函数
- 28. 在wysiwyg编辑器中可拖拽
- 29. 可以点击jQuery可拖拽父开始拖拽?
- 30. 在一个页面上的两个可拖拽和两个可拖拽
检查本教程的http:/ /vicky4147.wordpress.com/2007/02/04/a-simple-drag-drop-in-winforms/ – Zaki 2013-02-26 12:13:20
嗨Sam1,谢谢你的代码示例。我的情况有点不同。我的控件已经在组框中。 – brunoviske 2013-02-26 15:48:45
@brunoviske你可以请添加一些代码你想做什么? – Shrivallabh 2013-02-27 10:09:06