title: DataGrid SelectedItem not updating
body: <p>So I am reallly confused here.</p>
  
  <p>I created a datagrid, bound its itemsource two way and bound its selected item two way. The selected item getter gets called but the setter never does. All the pieces seem to be here. What am I missing?</p>
  
  <pre><code> &lt;DataGrid ItemsSource="{Binding Properties ,Mode=TwoWay}" 
                    SelectedItem="{Binding SelectedProperty ,Mode=TwoWay}" 
                    CanUserDeleteRows="False"  CanUserAddRows="False" AutoGenerateColumns="False" Background="LightBlue"&gt;
  
     &lt;DataGrid.Columns&gt;
        &lt;DataGridTextColumn IsReadOnly="True"  Header="Address" Binding="{Binding Address}"/&gt;
     &lt;/DataGrid.Columns&gt;
     &lt;DataGrid.RowDetailsTemplate&gt;
       &lt;DataTemplate&gt;
          &lt;DataGrid ItemsSource="{Binding Units ,Mode=TwoWay}" 
                    SelectedItem="{Binding SelectedUnit, Mode=TwoWay}" 
                    CanUserDeleteRows="False" CanUserAddRows="False" AutoGenerateColumns="False"&gt;
  </code></pre>
  
  <p>My first datagrid works fine including the selected item.</p>
  
  <p>The second third and fourth nested grids however don't bind to the selected item. The items sources work but that is it</p>
  
  <pre><code>   public class PropertyModel : ModelBase
     {
      private ObservableCollection&lt;UnitModel&gt; _Units;
  
      public ObservableCollection&lt;UnitModel&gt; Units
      {
          get { return _Units; }
          set { _Units = value; }
      }
      private UnitModel _SelectedUnit;
  
      public UnitModel SelectedUnit
      {
          get { return _SelectedUnit; }
          set { _SelectedUnit = value; OnPropertyChanged("SelectedUnit"); }
      }
  </code></pre>
  
  <p>There are no binding expression errors or any other errors displayed in the output window.</p>