Ejemplo n.º 1
0
        private void LayoutToSorted()
        {
            // Clear Holder
            _targetShadow.Children.Clear();
            _renderedSliceCount = 0;

            // Reset _target
            RotateToAngle(0);
            AnimateToPosition(0, 0);
            _currentScreen = 0;
            MoveScreen(0);
            ZoomIn();

            // Reset slice pointer
            _currentSortSliceIndex = 0;

            // Add all slices.
            for (int i = 0; i < _dataSource.Children.Count; i++)
            {
                PhotoSlice sortSlice = new PhotoSlice(this, i, _dataSource.Children[i]);
                sortSlice.OnSliceLoaded += new EventHandler<SliceLoadedEventArgs>(sortSlice_OnSliceLoaded);
                sortSlice.MouseLeftButtonUp += new MouseEventHandler(sortSlice_MouseLeftButtonUp);
                sortSlice.MouseEnter += new MouseEventHandler(sortSlice_MouseEnter);
                sortSlice.MouseLeave += new EventHandler(sortSlice_MouseLeave);
                _targetShadow.Children.Add(sortSlice);
                Point desPoint = GetSortSlicePosition(i);
                sortSlice.SetValue<double>(Canvas.LeftProperty, Math.Round(desPoint.X));
                sortSlice.SetValue<double>(Canvas.TopProperty, Math.Round(desPoint.Y));
            }

            _sortNavi.MoveHighlightFrameTo(_sortNavi.ThumHolder.Children[0] as ThumSlice);
            _currentSlice = _targetShadow.Children[0] as PhotoSlice;

            (_target.FindName("parentCanvas") as Page).ShowBothArrow();
            (_target.FindName("parentCanvas") as Page).HideLeftArrow();
            if(_dataSource.Children.Count<2)
            {
                (_target.FindName("parentCanvas") as Page).HideRightArrow();
            }
        }
Ejemplo n.º 2
0
        private void LayoutToRandom()
        {
            GenerateRandomPosition();

            // Update slice counter
            _randomSliceCount = _dataSource.Children.Count;
            _targetShadow.Children.Clear();
            _renderedSliceCount = 0;
            _currentScreen = 0;

            // Show slices.
            for (int i = 0; i < _dataSource.Children.Count; i++)
            {
                PhotoSlice mySlice = new PhotoSlice(this, i, _dataSource.Children[i]);
                mySlice.OnSliceLoaded += new EventHandler<SliceLoadedEventArgs>(mySlice_OnSliceLoaded);
                _targetShadow.Children.Add(mySlice);

                mySlice.SetValue<double>(Canvas.LeftProperty, -1000);
                mySlice.SetValue<double>(Canvas.TopProperty, -1000);
            }
        }