title: Can C# make my class look like another class?
body: <p>I have a class that looks like this:</p>
  
  <pre><code>public class BasePadWI
  {
      public WorkItem WorkItemReference { get; set; }
      .... Other stuff ......
  }
  </code></pre>
  
  <p>I then have a dictionary that is defined like this:</p>
  
  <pre><code>public Dictionary&lt;BasePadWI, Canvas&gt; Pad { get; set; }
  </code></pre>
  
  <p>I would then like to make a call like this:</p>
  
  <pre><code>List&lt;WorkItem&gt; workItems = Pad.Keys.ToList();
  </code></pre>
  
  <p>(Note: <code>WorkItem</code> is a sealed class, so I cannot inherit.)</p>
  
  <p>Is there some trickery that I could do in the class to make it look like a <code>WorkItem</code>?</p>
  
  <p>I have done this in the meantime: </p>
  
  <pre><code>List&lt;WorkItem&gt; workItems = Pad.Keys.ToList().ConvertAll(x=&gt;x.WorkItemReference );
  </code></pre>