title: Creating / Modifying Enums at Runtime
body: <p>I'm creating a program where the user has the option of creating their own custom properties that will ultimately be displayed in a <code>PropertyGrid</code>. Right now I don't want to mess with custom editors, so I'm only allowing primitive type properties (<code>string</code>, <code>int</code>, <code>double</code>, <code>DateTime</code>, <code>bool</code> etc.) that the <code>PropertyGrid</code> already has built in editors for.</p>
  
  <p>However, I also want to give the user the option to create multiple choice properties where they can defined a list of possible values which in turn will show up as a drop down list in the <code>PropertyGrid</code>.</p>
  
  <p>When I hard code an <code>Enum</code> in my code the property grid automatically shows properties of that <code>enum</code> as a drop down list. But can I create and or modify an enumeration at runtime so the user could add another property option, and go back to the <code>PropertyGrid</code> and see their new option in a drop down?</p>
  
  <p><strong>Update</strong></p>
  
  <p>Considering Patricks comment, I'm thinking that <code>Enum</code>s are not the right way to go in this case. So instead how can I use a list of strings to populate a drop down in a <code>PropertyGrid</code> item? Would that require a custom editor?</p>