title: Is there a practical alternative to struct inheritance? (C#)
body: <p>I am writing code that will populate the <code>Margin</code>, <code>Padding</code> and <code>BorderThickness</code> properties of classes in the <code>System.Windows.Documents</code> namespace. Each of these properties accepts a value in the form of a <code>System.Windows.Thickness</code>, which is a struct.</p>
  
  <p>However, I wish to associate some additional data with each of these property assignments, which may subsequently be retrieved by my code. If <code>Thickness</code> were a class, I would inherit from it and define properties in the subclass to store my additional data items. But since it is a struct, inheritance is not possible.</p>
  
  <p>Is there any practical way to achieve this, while maintaining type-compatibility with the properties I am populating?</p>
  
  <p>Thanks for your ideas,</p>
  
  <p>Tim</p>