none
VS2012中FlowLayoutPanel控件,最小化再还原出现滚动条 RRS feed

  • 问题

  • FlowLayoutPanel控件选中Autoscroll为true

    FlowDirection为lefttoright或者toptodown等属性时

    最小化窗口后,再还原,就会在FlowDirection对应的方向(topdown则出现竖直滚动条,lefttoright则出现横向滚动条)出现滚动条,对比最小化和正常的数据发现最小化以后DisplayRectangle中的height和width有变化,一般在最小化的时候是一个减量一个增量(FlowDirection方向决定width还是height加,如图第34行是height减width加,而实际上最小化程序并没有做任何操作)

    想通过重写FlowLayoutPanel的sizechange事件来解决,但是DisplayRectangle是只读的,无法改写里面的值,请各位大侠帮忙看看如何才能解决。谢谢


    我只愿面朝大海,春暖花开……

    2012年10月24日 8:46

答案

  • Hi 夏米,

    “FlowLayoutPanel控件选中Autoscroll为true FlowDirection为lefttoright或者toptodown等属性时最小化窗口后,再还原,就会在FlowDirection对应的方向(topdown则出现竖直滚动条,lefttoright则出现横向滚动条)出现滚动条”

    能够提供重现该问题的代码吗?根据你的描述我并没有重现出如你所说的问题。如果你认为这是vs2012中的一个issue, 你可以到以下网站中进行反馈。谢谢!

    https://connect.microsoft.com/VisualStudio/Feedback


    Bob Shen [MSFT]
    MSDN Community Support | Feedback to us


    2012年10月26日 6:41
    版主

全部回复

  • Hi 夏米,

    “FlowLayoutPanel控件选中Autoscroll为true FlowDirection为lefttoright或者toptodown等属性时最小化窗口后,再还原,就会在FlowDirection对应的方向(topdown则出现竖直滚动条,lefttoright则出现横向滚动条)出现滚动条”

    能够提供重现该问题的代码吗?根据你的描述我并没有重现出如你所说的问题。如果你认为这是vs2012中的一个issue, 你可以到以下网站中进行反馈。谢谢!

    https://connect.microsoft.com/VisualStudio/Feedback


    Bob Shen [MSFT]
    MSDN Community Support | Feedback to us


    2012年10月26日 6:41
    版主
  • 这个并不是2012的问题。我试过2010也是一样的。经过多番实验,终于找出一个奇葩的解决方案,就是创建一个窗体大小改变事件,在窗体大小改变事件中判断窗体是否最小化this.WindowState != FormWindowState.Minimized,如果不是,对应的FlowLayoutPanel则显示,否则隐藏。就不会出现多余的滚动条了。希望能帮到你。。。

    2013年10月12日 10:21