title: How to find default property values of a control at runtime in C#
body: <p>I have a control ...any <strong>System.Windows.Forms.Control</strong>. say for eg. label.</p>
  
  <p>I wish to find the default value for its property called "Enabled" (can be any property for that matter). How do I do it?</p>
  
  <p>1) See, in this case, we have a label. The label's default value for the property "Enabled" is true.</p>
  
  <p>2) Now at runtime, suppose I wish to find out what is the default value for the property "Enabled"...how do I find out?</p>
  
  <p>3)To start with I have an object of my control. From that object, I can only get the current value for the property "Enabled" but not the DEFAULT value.</p>
  
  <p>One possible approach to this question could be:</p>
  
  <p>1)Identify the control's type at runtime.
  2)Initialize it using its default constructor.
  3)Find the value of the property we are interested in (It will obviously be the default value) and there..we have the default value.</p>
  
  <p>But, in this case..I don't know my control before hand. All i know is , that it can be any control from <strong>System.Windows.Forms.Control</strong> . So how do I even initialize it and get its object? Is it possible?</p>
  
  <p>Do you have any alternative solution/ better approach?</p>