winform在程序运行中,鼠标选中控件,控件呈选中状态,并能拖动拖动鼠标改变控件大小和位置,如从工具箱中创建控件一样的效果,兄弟提供代码。

解决方案 »

  1.   

    给我也来一份,学习一下。谢谢。
    [email protected]
      

  2.   

    一种解决方案:给控件自动增加“边框”,这个边框不到用来醒目地显示控件的范围,而且用来捕获鼠标的MouseDown事件。控件的背景容器控件(例如Panel)捕获鼠标的MouseUP、MouseMove事件。MouseDown的时候记录“谁被选中,是选中了四边还是四角”。在MouseMove的时候如果选中了需要运行时设计的对象,则处理拖动(选中四边)和改变大小(选中四角)事件。MouseUP的时候删除“谁被选中”对象。
      

  3.   

    选中就是控件Focused了
    Move在Form_mousemove事件里修改控件的Location,就可以移动,我没做过测试,不知道这样会不会造成窗体的抖动
      

  4.   

    http://www.microsoft.com/china/MSDN/library/netFramework/netframework/DesignerHosting.mspx?mfr=true这个你看看吧,做出来的效果和VS的窗口设计器一样的