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(); } }
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); } }