title: Binding to the same property on multiple windows doesn't work
body: <p>I ran into a quite confusing problem when developing a multi-window wpf application.</p>
  
  <p>There are two windows, MainWindow and SecondWindow. The code of both is pretty simple:
  MainWindow:</p>
  
  <pre><code>&lt;Button Content="Change Property to 5" Click="ChangeProperty" HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top" /&gt;
  </code></pre>
  
  <p>SecondWindow:</p>
  
  <pre><code>&lt;Label Content="{Binding InstanceOfMyClass.value, NotifyOnSourceUpdated=True}"&gt;&lt;/Label&gt;
  </code></pre>
  
  <p>The code behind the second Window is untouched, the code behind the first window is the following:</p>
  
  <pre><code>public partial class MainWindow : Window
  {
      SecondWindow w;
      ViewModel vm;
      public MainWindow()
      {
          InitializeComponent();
          vm = new ViewModel() { InstanceOfMyClass = new MyClass() { value = 3 } };
          w = new SecondWindow() { DataContext = vm };
          w.Show();
      }
  
      private void ChangeProperty(object sender, RoutedEventArgs e)
      {
          vm.InstanceOfMyClass.value = 7;
      }
  }
  </code></pre>
  
  <p>And the view model class which implements INotifyPropertyChanged:</p>
  
  <pre><code>class ViewModel : INotifyPropertyChanged
  {
      private MyClass _instance;
      public MyClass InstanceOfMyClass 
      {
          get
          {
              return _instance;
          }
          set
          {
              _instance = value;
              OnPropertyChanged("InstanceOfMyClass");
          }
      }
  
      public event PropertyChangedEventHandler PropertyChanged;
      protected virtual void OnPropertyChanged(string propertyName)
      {
          var handler = PropertyChanged;
          if (handler != null) handler(this, new PropertyChangedEventArgs(propertyName));
      }
  }
  class MyClass
  {
      public int value { get; set; }
  }
  </code></pre>
  
  <p>I expected the text block to change its text to 5 when I click the button. 
  The number "3" is correctly loaded on startup. The window also refreshes when I create a new instance of <code>MyClass</code> and set it as <code>InstanceOfMyClass</code> in my <code>ViewModel</code>.</p>
  
  <p>But when I hit the button - or, even stranger, when I temporarily store <code>InstanceOfMyClass</code>, set it to <code>null</code> and reassign it with the saved variable - nothing happens.</p>
  
  <p>Any idea why?</p>
  
  <p>Thanks in advance!</p>