###自定义控件的设计时问题###
自定义控件,如何能实现在设计时,不允许拖放任何其它控件在其上。
我现在的做法是
:
以下代码都是在设计器里的
public override void Initialize(IComponent component)
{
base.Initialize(component);
if (Control is UserControl1)
{
mCon = (UserControl1)Control;
mDesignerHost = (IDesignerHost)
GetService(typeof(IDesignerHost));
mToolboxService = (IToolboxService)
GetService(typeof(IToolboxService));
mCon .AllowDrop = true;
this.EnableDragDrop(true);
}
}
protected override void OnDragEnter(System.Windows.Forms.DragEventArgs de)
{
base.OnDragEnter(de);
de.Effect = DragDropEffects.None;
return;
}
1。现在的情况是,拖动工具箱button进入过程中,鼠标是不显示出来button的。鼠标抬起的时候也不放置button在控件中,但是鼠标上有button按钮附着着,再单击一下,就放置button在控件中了。
2。要是在Initialize方法中
mCon .AllowDrop = false;//设置成false
this.EnableDragDrop(false);//设置成false
就跟没定义设计器一样了,可以任意拖放控件在其中。
请高手指教,谢谢!!!!!!!!!!!!!!!