private void AssociatedObjectOnInitialized() { var adorner = AddAdorner(AssociatedObject); _adorner = adorner; var isAdornerVisible = GetIsAdornerVisible(AssociatedObject, adorner); isAdornerVisible .ObserveOn(RxApp.MainThreadScheduler) .Subscribe(isVisible => _adorner.IsVisible = isVisible); }
private TreeDataGridItemDetailsAdorner AddAdorner(TreeDataGridRow?to) { var layer = GetAdornerLayer(); var adorner = new TreeDataGridItemDetailsAdorner { [AdornerCanvas.AdornedElementProperty] = to, [AdornerCanvas.IsClipEnabledProperty] = false, Row = to }; var setLogicalParent = (ISetLogicalParent)adorner; setLogicalParent.SetParent(to); layer.Children.Add(adorner); return(adorner); }