窗体宽度设置为620*600,listView宽度设置为600*400,listView.Location= new Point(10,10)
按理说listView应该是水平居中的,但实际上listView却在窗体中偏右,这是为什么?
如果想让listView居中,那这些属性该怎么设置(不用设计试图)?
窗体最上面的蓝条height是多少?

解决方案 »

  1.   

    那是因为你的窗体长宽是620×600,但是你的窗体的ClientRectangle没有620×600,也许大概就615×580左右(不清楚具体的,你可以调用窗体的这个属性得到你要的值)。
    你的ListView控件是有边框的啊····你不可忽视这个边框的像素···。我个人认为比较妥当的做法是 
    int width = form.clientrectangle.width - listview.width
    int height = form.clientrectangle.height - listview.height
    listview.location.x = width / 2
    listview.location.y = height / 2一般情况下,listview边框的像素大概是2-3左右(1-2)也可能,你自己试试,如果我给的计算公式不是很正的话,你就加减1-2个像素微调一下。哎呀,头比较晕乎,都快2点了····电脑上也没.net,就凭着记忆给你写了这个,也许单词的拼写有错,请注意。
      

  2.   

    ListView一个边框2像素,占的是Width里面的
    窗体的Size(628*600) Width=626 ClientRectangle.Width=620
    问题解决,感谢:)