title: Printing Significant Digits
body: <p>I'm attempting to create graph axis labels -- the physical text.  I know how to get the labels and print them using GDI, but my algorithm doesn't do a great job of printing with fractional steps.</p>
  
  <p>To print the labels, I currently get the first label and then add a step to each label that follows:</p>
  
  <pre><code>public static void PrintLabels(double start, double end, double step);
  {
      double current = start;
  
      while (current &lt;= end)
      {
          gfx.DrawString(current.ToString(),...); 
          current += step;
      }
  }
  </code></pre>
  
  <p>Is there a <code>number.ToString("something")</code> that will print out decimals if they are there, otherwise just the whole part?  I would first check if either start, end, or step contains a fractional part, then if yes, print all labels with a decimal.</p>