Graphics.MeasureString是否依赖于控件?

时间:2012-08-28 19:32:59

标签: c# winforms

在下面的图片中,我得到了这些代码的“相同”数字,其中一个是针对短信的,另一个是针对按钮的...在图片中我看到了字体大小我在表格单元格中输入的东西大于按钮的字体大小,但为什么这两个代码返回相同的数字?

    Graphics graphics =  ctlTEEditor.CreateGraphics();
    int width = (int)graphics.MeasureString("FitsToooo", ctlTEEditor.Font).Width;
    MessageBox.Show(width.ToString());

    Graphics graphics2 = button1.CreateGraphics();
    int width2 = (int)graphics2.MeasureString("FitsToooo", button1.Font).Width;
    MessageBox.Show(width2.ToString());

enter image description here

2 个答案:

答案 0 :(得分:1)

MeasureString不知道控件可能选择实现的任何自动换行。

答案 1 :(得分:0)

好的,问题是在我说“ctlTEEditor.Font”的代码中,这是 control 本身的字体,而不是表格单元格中使用的字体即可。