在winform中  我就是做了一个用户可以自己托控件到 一个panel中去  可以改变其属性,有 button,label,pictureBox等  我现在是想实现用鼠标按住左键拖动  框在里面的控件就被选中。就是想实现  选中任意panel中的一个,两个或多个控件!这样。希望哪位大哥大姐能慷慨解囊呀!

解决方案 »

  1.   

    容器,按住ctrl就可选择多个控件
      

  2.   

    1.遍历控件的位置是否与你的框选内或相交
    2.判断ctrl键下且你点的位置是否在控件内
      

  3.   

    方法一 给你的控件加一个属性,是否被选中(打个比方叫 isSelected)。
          选中后(打个比方按区域拖出来一矩形),把区域内的矩形打上这个标志(因为你的控件要支持这个属性), 根据标志状态,对选 中内容自绘或通过容器绘制(看你自己的需要)。
    方法二 在容器中定义一个变量(当然,其它地方 也可以),记录下你选择的内容,让窗口绘出被选中项的状态。不知能否解决你的问题。
    楼下高手接着上。
      

  4.   

    按住ctrl然后点击你想要移动的控件,这样就行啦!
      

  5.   

    可能是我没有说清楚  上面的  高手们没有理解我的意思。
    比如说  我运行一个窗口  里面有上个panel1,panel2,panel3.关键是这个程序是运行起的
    panel1里放了许多可拖动的控件  把他们拖到panel2里面去   然后我想把他们多选中!