title: How to determine width of a string when printed?
body: <p>I'm creating a custom control, part of which is using the <code>Graphics</code> class to draw text to the form. Currently I'm using the following code to display it:</p>
  
  <pre><code>private float _lineHeight { get { return this.Font.Size + 5; } }
  private void Control_Paint(object sender, PaintEventArgs e)
  {
      Graphics g = this.CreateGraphics();
      Brush b = new SolidBrush(Colors[7]);
  
      g.DrawString("Hello World!", this.Font, b, 0, 2);
      g.DrawString("This has been a test of the emergency drawing system!",
          this.Font, b, 0, 2 + _lineHeight);
  }
  </code></pre>
  
  <p>I'm currently using fixedwidth fonts, and I'd like to know how wide the font will display, but there doesn't appear to be any properties for this sort of information. Is there some way of obtaining it? I want it so I can wrap lines properly when displayed.</p>