Esempio n. 1
0
		void UpdateAdaptor(SharpTreeNode node)
		{
			if (nodeView == null)
				return;

			var doAdaptor = nodeView.DataContext as SharpTreeNodeProxy;
			if (doAdaptor == null)
				nodeView.DataContext = (doAdaptor = new SharpTreeNodeProxy(node));
			else
				doAdaptor.UpdateObject(node);

			nodeView.UpdateTemplate();
		}
Esempio n. 2
0
		void UpdateDataContext(SharpTreeNodeProxy oldAdaptor, SharpTreeNodeProxy newAdaptor)
		{
			if (newAdaptor != null) {
				newAdaptor.ObjectChanged += AdaptorObjectChanged;
				if (newAdaptor.Object != null) {
					newAdaptor.Object.PropertyChanged += Node_PropertyChanged;
					oldNode = newAdaptor.Object;
				}
			}
			if (oldAdaptor != null) {
				oldAdaptor.ObjectChanged -= AdaptorObjectChanged;
				if (oldAdaptor.Object != null) {
					oldAdaptor.Object.PropertyChanged -= Node_PropertyChanged;
				}
			}
		}