/// <summary> /// Attach data context's new value to update directory path. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void TreeViewPath_DataContextChanged(object sender, DependencyPropertyChangedEventArgs e) { SyncPairViewModel vm = (SyncPairViewModel)e.NewValue; if (vm != null) { vm.UpdateDirectoryPath += ViewModel_UpdateDirectoryPath; } }
/// <summary> /// Update directory tree view with data context's new value. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void ViewModel_UpdateDirectoryPath(object sender, EventArgs e) { SyncPairViewModel obj = (SyncPairViewModel)DataContext; // Refresh source directory tree view. // TODO Check for NULL if (obj != null) { trvSrcDir.populateTreeView(this, new PropertyChangedEventArgs(obj.SrcRoot)); // Refresh destination directory tree view. trvDstDir.populateTreeView(this, new PropertyChangedEventArgs(obj.DstRoot)); } }