private double GetRelativeOffset() { ScrollContentPresenter scp = MainScrollViewer.GetFirstDescendantOfType <ScrollContentPresenter>(); FrameworkElement content = scp?.Content as FrameworkElement; GeneralTransform transform = ScrollingTabs.TransformToVisual(content); return(transform.TransformPoint(new Point(0, 0)).Y - MainScrollViewer.VerticalOffset); }
private double GetRelativeOffset(ScrollViewer sc) { ScrollContentPresenter scp = sc.GetFirstDescendantOfType <ScrollContentPresenter>(); FrameworkElement content = scp?.Content as FrameworkElement; //TabLayout tabLayout = content.GetFirstDescendantOfType<TabLayout>(); var tabLayoutx = content.GetDescendants().FirstOrDefault(x => (x as FrameworkElement).Name == "ScrollingTabs"); GeneralTransform transform = ScrollingTabs.TransformToVisual(scp); //GeneralTransform transform = ScrollingTabs.TransformToVisual(tabLayoutx as FrameworkElement); return(transform.TransformPoint(new Point(0, 0)).Y - sc.VerticalOffset); }