title: Wrapped ObservableCollection<T> throwing `'EditItem' is not allowed for this view` when bound to a WPF DataGrid
body: <p>I created a wrapper to extend an <code>ObservableCollection&lt;T&gt;</code></p>
  
  <pre><code>[Serializable]
  public abstract class ModelCollection&lt;TModel&gt; : ModelCollectionBase,
      IList&lt;TModel&gt;, INotifyCollectionChanged, INotifyPropertyChanged
      where TModel : ModelBase&lt;TModel&gt;
  {
      private ObservableCollection&lt;TModel&gt; wrappedCollection = new ObservableCollection&lt;TModel&gt;();
  
      // wrapper implementation goes here
  }
  </code></pre>
  
  <p>I thought it was working fine until I attempted to bind items from a list to a DataGrid.</p>
  
  <pre><code>&lt;DataGrid ItemsSource="{Binding /Orders}" AutoGenerateColumns="False"&gt;
      &lt;DataGrid.Columns&gt;
      &lt;DataGridTextColumn Header="Order Id" Binding="{Binding OrderId}" /&gt;
          &lt;DataGridTextColumn Header="Date Time" Width="125" Binding="{Binding DateTime}" /&gt;
          &lt;DataGridTextColumn Header="Notes" Width="125" Binding="{Binding Notes}" /&gt;
          &lt;DataGridTextColumn Header="Cost" Width="75" Binding="{Binding Cost}" /&gt;
      &lt;/DataGrid.Columns&gt;
  &lt;/DataGrid&gt;
  </code></pre>
  
  <p>The items appear in the grid, but double clicking a cell throws <code>'EditItem' is not allowed for this view.</code></p>
  
  <p>The exception isn't thrown when I replace my <code>ModelCollection&lt;TModel&gt;</code> with a regular <code>ObservableCollection&lt;T&gt;</code>.</p>
  
  <p>My intent is to allow editing on the cells. Am I missing an interface on my wrapper?</p>