public void SanityCheck()
        {
            var child        = new Control();
            var parent       = new Decorator();
            var grandParent  = new Border();
            var grandParent2 = new Border();

            IVisual currentParent = null;
            var     subscription  = AncestorFinder.Create(child, typeof(Border)).Subscribe(s => currentParent = s);

            Assert.Null(currentParent);
            parent.Child = child;
            Assert.Null(currentParent);
            grandParent.Child = parent;
            Assert.Equal(grandParent, currentParent);
            grandParent.Child  = null;
            grandParent2.Child = parent;
            Assert.Equal(grandParent2, currentParent);

            subscription.Dispose();
            parent.Child = null;
            Assert.Equal(grandParent2, currentParent);
        }
Ejemplo n.º 2
0
 public void Init()
 {
     _hotkeySub = _control.GetObservable(HotKeyProperty).Subscribe(OnHotkeyChanged);
     _parentSub = AncestorFinder.Create(_control, typeof(TopLevel)).Subscribe(OnParentChanged);
 }