title: MVC using different text for form label
body: <p>I have just created an MVC project and my view looks like this</p>
  
  <pre><code>{
      @model Models.LeadModels
      ViewBag.Title = "Add a Lead";
  }
  &lt;h2&gt;@ViewBag.Title.&lt;/h2&gt;
  &lt;h3&gt;@ViewBag.Message&lt;/h3&gt;
  
  &lt;p&gt;@ViewBag.SaveResult&lt;/p&gt;
  
  @using (Html.BeginForm("Add", "Lead"))
  {
      &lt;p&gt;@Html.LabelFor(m =&gt; m.FirstName)
      @Html.TextBoxFor(m =&gt; m.FirstName)&lt;/p&gt;
      &lt;p&gt;@Html.LabelFor(m =&gt; m.LastName)
      @Html.TextBoxFor(m =&gt; m.LastName)&lt;/p&gt;
      &lt;p&gt;@Html.LabelFor(m =&gt; m.Company)
      @Html.TextBoxFor(m =&gt; m.Company)&lt;/p&gt;
      &lt;p&gt;@Html.LabelFor(m =&gt; m.Province)
      @Html.TextBoxFor(m =&gt; m.Province)&lt;/p&gt;
      &lt;p&gt;@Html.LabelFor(m =&gt; m.Telephone)
      @Html.TextBoxFor(m =&gt; m.Telephone)&lt;/p&gt;
      &lt;p&gt;@Html.LabelFor(m =&gt; m.EmailAddress)
      @Html.TextBoxFor(m =&gt; m.EmailAddress)&lt;/p&gt;
      &lt;p&gt;@Html.LabelFor(m =&gt; m.LeadStatus)
      @Html.TextBoxFor(m =&gt; m.LeadStatus)&lt;/p&gt;
      &lt;p&gt;&lt;input type="submit" value="Add Lead" /&gt;&lt;/p&gt;
  }
  </code></pre>
  
  <p>When this is rendered the labels are the same as my model properties, as in the text says "FirstName"</p>
  
  <p>Questions.</p>
  
  <ol>
  <li><p>Is there a way to put in a different label (First Name instead of FirstName) using a HTML Helper method?</p></li>
  <li><p>Are there any neat stuff/tricks we can do to change the display? Such as set the labels to be a fixed width so they all line up?</p></li>
  <li><p>Is there a way to use a HTML Helper method to output the submit button? Or do I need to manually write the HTML like I am doing?</p></li>
  </ol>