private static void OnFixedElementLoaded(object sender, RoutedEventArgs e) { var element = sender as FrameworkElement; if (element == null) { return; } element.Loaded -= new RoutedEventHandler(TableViewScrollViewer.OnFixedElementLoaded); TableViewScrollViewer.SetFixedTranslateTransformCore(element, TableView.GetCanScrollHorizontally(element)); }
internal static void SetFixedTranslateTransform(FrameworkElement element, bool canScrollHorizontally) { if (element == null) { throw new ArgumentNullException("element"); } if (!TableViewScrollViewer.SetFixedTranslateTransformCore(element, canScrollHorizontally)) { if (!element.IsLoaded) { // The method failed to apply the translate transform because it could not find a ScrollViewer // among its ancestors. Try again when the element will be loaded in case it wasn't in the // VisualTree. element.Loaded += new RoutedEventHandler(TableViewScrollViewer.OnFixedElementLoaded); } } }