title: What should I do with INotifyPropertyChanged when a child list changes
body: <p>I have a set of data objects that I am using for databinding that implement the INotifyPropertyChanged interface and I'm trying to figure out what to do with properties of complex type.</p>
  
  <p>If I have something like</p>
  
  <pre><code>
  class C {
   private string text;
   public string Text {
    get { return text; }
    set {
     if(Text != value) {
      text = value;
      OnPropertyChanged("Text");
     }
    }
   }
  }
  </code></pre>
  
  <p>I know what to do, but what if the property is mutable, presumably I should be notifying of changes to the type as well.</p>
  
  <p>If the property itself implements INotifyPropertyChanged, presumably I can handle that event and bubble it up, but should I be doing the same if the raises a ListChangedEvent (say it is an IBindingList)?</p>
  
  <p>This is .NET 2.0 so no dependency properties etc. allowed.</p>