子form已经AllowDragDrop=true;有OnDragEnter、OnDragDrop方法。
但subform.ShowDialog()显示form后,拖放时就是不允许,但拖到父窗口就可以partial class MainForm
{
MySubForm subform = new MySubForm();
public MainForm()
{
subform.AllowDragDrop=true;
}
public void Button1_Clicked()
{
subform.ShowDialog();
}
}
    

解决方案 »

  1.   

    你以对话框的形式打开,当前程序的活动窗体已不是form了
      

  2.   

    这没关系吧?
    show()/showdialog()的区别应该只是无模式和有模式
      

  3.   

    解决了!
    我的form被richtextbox占满了,
    原因是这个richtextbox也需要指定AllowDragDrop=true;和OnDragEnter、OnDragDrop方法
    否则无法处理。一般控件都不用管这个的,只要他所属的form能拖放就可以的。
    不知为什么!!!