public MainWindow()
        {
            InitializeComponent();

            SourceWatchControl.ItemsSource = Enumerable.Range(1, 10000);
            NavigateToListViewItemIndex(700);

            ProjectionWatchControl.ItemsSource   = Enumerable.Range(1, 10000);
            ProjectionWatchControl.SelectedIndex = 2;
            ProjectionWatchControl.ScrollIntoView(ProjectionWatchControl.SelectedItem);

            DestinationeWatchControl.ItemsSource   = Enumerable.Range(1, 10000);
            DestinationeWatchControl.SelectedIndex = 999;
            DestinationeWatchControl.ScrollIntoView(DestinationeWatchControl.SelectedItem);
        }
        private void AnimateNavigationToRight()
        {
            var timeSpanForAllAnimations = new TimeSpan(0, 0, 0, 0, 700);

            //Add Image
            Grid.SetRow(_image, 0);
            Grid.SetColumn(_image, 0);
            GridWithListViews.Children.Add(_image);

            TranslateTransform translateTransform = new TranslateTransform();

            _image.RenderTransform = translateTransform;

            Point rightPoint = ProjectionWatchControl.TransformToAncestor(GridWithListViews)
                               .Transform(new Point(0, 0));

            var translateTransformKeyFrame =
                new EasingDoubleKeyFrame(rightPoint.X, KeyTime.FromTimeSpan(timeSpanForAllAnimations));
            //KeyTime.FromTimeSpan(new TimeSpan(0, 0, 0, 0, 700)), new CircleEase() {EasingMode = EasingMode.EaseIn});

            var doubleAnimation = new DoubleAnimationUsingKeyFrames();

            doubleAnimation.KeyFrames.Add(translateTransformKeyFrame);
            var storyBoard = new Storyboard();

            Storyboard.SetTarget(doubleAnimation, _image);
            Storyboard.SetTargetProperty(doubleAnimation, new PropertyPath("RenderTransform.(TranslateTransform.X)"));
            storyBoard.Children.Add(doubleAnimation);

            //Visibility
            var visiblityTransformKeyFrameSecond =
                new DiscreteObjectKeyFrame(Visibility.Visible, KeyTime.FromTimeSpan(timeSpanForAllAnimations));

            var objectAnimation = new ObjectAnimationUsingKeyFrames();

            objectAnimation.KeyFrames.Add(visiblityTransformKeyFrameSecond);

            Storyboard.SetTarget(objectAnimation, ProjectionWatchControl);
            Storyboard.SetTargetProperty(objectAnimation, new PropertyPath("UIElement.Visibility"));

            storyBoard.Completed += StoryBoard_Completed;
            storyBoard.Begin();
        }