这段代码怎么不能实现拖拉控件?(在线等待)
1. 欲实现的功能:
WinForm上有两个容器控件: Panel1 和Panel2 , Panel1里面有一个控件button1, 现在想把button1从Panel1拖到Panel2
2. 代码
private void InitializeComponent()
{
...
this.button1.AllowDrop = true ;
this.button1.MouseDown += new MouseEventHandler(this.button1_MouseDown);
...
this.panel1.AllowDrop = true ;
...
this.panel2.AllowDrop = true ;
this.panel2.DragEnter += new DragEventHandler(this.panel2_DragEnter);
this.panel2.DragDrop += new DragEventHandler(this.panel2_DragDrop);
...
}
private void button1_MouseDown(object sender, MouseEventArgs e)
{
this.button1.DoDragDrop(this.button1,DragDropEffects.Move);
}
private void panel2_DragEnter(object sender, DragEventArgs e)
{
e.Effect = System.Windows.Forms.DragDropEffects.Move ;
}
private void panel2_DragDrop(object sender, DragEventArgs e)
{
Control ctl = (Control)sender;
this.panel1.Controls.Remove(ctl); //行A
this.panel2.Controls.Add(ctl); //行B
}
问题:
执行了行A和行B的代码,panel1的控件没有移走,panel2也没有添加控件,
请问问题出在哪里,谢谢了!