winform编程,一个usercontrol里,设计器里设置label的AutoSize为false,设定了字体:宋体,9pt,这时label的size中Height显示是21,但是运行起来后,发现label比旁边的TextBox短了一点,跟踪了一下,发现label的Height变成20了,这个是怎么回事?
哪位朋友知道这个问题可能是什么原因引起的?(代码中没有设置过label的高度)

解决方案 »

  1.   

    影响label位置的两个属性:
    label1.Location
    label1.Padding如果label1.AutoSize==false
    label1.Height  是不会变的
      

  2.   

    楼上的,AutoSize的确是false,但是Height的确变了
      

  3.   

    AutoSize是false的话 引起label高度变化的只有可能是字体的大小了...
    你跟一下执行到那的时候字体实际的大小是多少
      

  4.   

    找到原因了,窗体的AutoScaleMode改成font就好了,原来是Inherit
      

  5.   

    贴出相关代码,label内容
      

  6.   

    9楼的早点出现就好了,呵呵顺便再问一下,我发现我同样的代码,在中文xp下和英文xp下在vs2005设计器中看到的效果不一致,label和TextBox的Height,Font都一样,但是TextBox看着就比label短一点(就象Height小一点一样),这个是什么原因?运行起来也是一样,短一点。请知道的不吝赐教~
      

  7.   

    LABEL高度不能自己变化的好象尤其是多行的情况下!
      

  8.   

    找到原因了,窗体的AutoScaleMode改成font就好了,原来是Inherit
      

  9.   

    一个是Label,一个是TextBox ,不是一个类型。况且TestBox还有个框框,总要有个空间给它生存吧。