继承自UserControl的自定义控件,在上边放了一个dock属性为fill的PictureBox,在窗体设计时我想用鼠标拖拉控件右下边界改变控件在窗体中显示的大小,怎么也拖不动,为什么?

解决方案 »

  1.   

    拖动之前,右键,弹出菜单中选择:"选择UserControl1",然后再拖动就可以了。
      

  2.   

    对不起我没说清楚
    我是说在调用这个自定义控件的窗体上拖动(resize)这个控件时拖拉不动
    是不是需要设置这个自定义控件的某些属性或方法?
    我在自定义控件的resize和PictureBox的resize内都添加代码
    DCtlWidth = this.Width;
    DCtlHeight = this.Height;
    this.pictureBox1.Invalidate();
    可是不起作用
      

  3.   


    你应该选中的是PictureBox  因为已经Dock设置为Fill当然是拖不动的
      

  4.   


    还是没明白 猜测是你想拖动UserControl 但是 拖不动?
    你是不是 把usercontrol  的Dock也设置成Fill
      

  5.   

    我刚才试过 可以拖动的 你们确定拖动时选中的是user control 而不是pictureBox并且是在设计期拖动的 而不是exe运行时拖动?我可以把工程发给你们see see
      

  6.   

    jianuMan,就是在设计期拖的,不是在exe运行时拖的
    我也不知道怎样确定选中的user control 还是pictureBox,因为user control 就是放了一个PicutureBox,并且PicutureBox的dock属性还是fill的,我想既然user control 是作为一个控件放在设计期的form上,应该自然就选中它吧?怎么把user control 和PicutureBox分开呢?
    ,方便的话请把工程发给我看看好吗?
      

  7.   

    鼓捣好了,不知道怎么回事都
    把pictureBox的dock属性改成none,并把它缩小为比user control小一点点,重新在设计程序的窗体上添加控件并执行,后来又把pictureBox的dock属性改成fill,又在设计程序的窗体上重新添加,就可以拖拉了。
    还有我原来pictureBox的sizemode属性是AutoSize,后来改成Normal了