title: WPF DataContext Binding & DataContextChanged Event
body: <p>I am having issues with the DataContextChanged event not firing as expected.</p>
  
  <p>In my Main Window XAML I have a User Control declared as so:</p>
  
  <pre><code>&lt;UserControls:PeopleView DataContext="{Binding People}"&gt;&lt;/UserControls:PeopleView&gt;
  </code></pre>
  
  <p>In my Main Window CodeBehind I have the 'People' datasource declared as so:</p>
  
  <pre><code>Public Property People() As PersonCollection
      Get
          Return _People
      End Get
      Set(value As PersonCollection)
          _People = value
          UpdateProperty("People")
      End Set
  End Property
  </code></pre>
  
  <p>In my PeopleView user control I have the following:</p>
  
  <pre><code>Public Sub OnDataContextChanged() Handles Me.DataContextChanged
  
      Console.WriteLine("Data context changed")
  
  End Sub
  </code></pre>
  
  <p>When the Main Window is initially rendered, and the PeopleView DataContext is bound to the 'People' property for the first time, the event fires as expected. However, when I subsequently change the 'People' property to a different collection from within Main Window, the DataContextChanged event is not firing:</p>
  
  <pre><code>Me.People = New PeopleCollection
  </code></pre>
  
  <p>What am I doing wrong?</p>