title: Store generic data in a non-generic class
body: <p>I have a DataGridView that I want to use to store generic data.  I want to keep a typed data list in the DataGridView class so that all of the sorts, etc. can be handled internally.  But I don't want to have to set the type on the DataGridView since I won't know the data type until the InitializeData method is called.</p>
  
  <pre><code>public class MyDataGridView : DataGridView {
      private List&lt;T&gt; m_data;
      public InitializeData&lt;T&gt;(List&lt;T&gt; data) {
         m_data = data;
      }
      ... internal events to know when the datagrid wants to sort ...
      m_data.Sort&lt;T&gt;(...)
  }
  </code></pre>
  
  <p>Is this possible?  If so, how?</p>