title: Rename classes using Visual Studio Project Template
body: <p>I have created a Visual Studio template using this link: <a href="http://msdn.microsoft.com/en-us/library/ms185301.aspx" rel="nofollow noreferrer">http://msdn.microsoft.com/en-us/library/ms185301.aspx</a>.</p>
  
  <p>I am able to create a dialog where the user enters a custom message and it gets displayed:</p>
  
  <pre><code>namespace TemplateProject
  {
      class WriteMessage
      {
          static void Main(string[] args)
          {
               Console.WriteLine("$custommessage$");
          }
      }
  }
  </code></pre>
  
  <p>What I want to do it allow the user to rename the class names so I want to do something like:</p>
  
  <p><img src="https://i.stack.imgur.com/opbuW.png" alt="enter image description here"></p>
  
  <p>But you see I'm getting errors of "Unexpected character $"</p>
  
  <p>How can I do this?</p>
  
  <p><strong>EDIT</strong></p>
  
  <p>I see from this link: <a href="http://msdn.microsoft.com/en-us/library/eehb4faa(v=vs.110).aspx" rel="nofollow noreferrer">http://msdn.microsoft.com/en-us/library/eehb4faa(v=vs.110).aspx</a> that </p>
  
  <p><em>To enable parameter substitution in templates:
  In the .vstemplate file of the template, locate the ProjectItem element that corresponds to the item for which you want to enable parameter replacement.
  Set the ReplaceParameters attribute of the ProjectItem element to true.</em></p>
  
  <p>BUT above I have not yet generated the template yet as I am still defining the classes.  I understnad that the above step needs to be done in order to get the parameter substitution enabled for a File-->New Project scenario.</p>