title: When to release UserControl event handlers?
body: <p>If I'm registering events on a UserControl in the code behind. E.g.:</p>
  
  <pre><code>public partial class PositionView : UserControl
  {
      // If required ViewModel can be accessed using DataContext 
      public PositionViewModel ViewModel 
      {
          get { return (PositionViewModel) this.DataContext; }
      }
  
      public PositionView()
      {
          InitializeComponent();
  
          this.DataContextChanged += new System.Windows.DependencyPropertyChangedEventHandler(PositionView_DataContextChanged);
      }
  
      void PositionView_DataContextChanged(object sender, System.Windows.DependencyPropertyChangedEventArgs e)
      {
          this.ViewModel.UpdateTotalsChanged.Subscribe(_ =&gt; this.PositionGridControl.UpdateTotalSummary());
      }       
  }
  </code></pre>
  
  <p>When should I be disposing of the event handler? There is no IDisposable to hook onto?</p>
  
  <p>If I bind to the event via the xaml will this be a cleaner solution in terms of lifetime management?</p>