private void Add(ScatterViewItem element) { DocumentContainer.SetDockState(element, DockStates.Floating); element.AddHandler(UIElement.ManipulationCompletedEvent, new EventHandler<ManipulationCompletedEventArgs>(element_ManipulationDelta), true); element.PreviewTouchMove += new EventHandler<TouchEventArgs>(element_PreviewTouchMove); ((ScatterViewItem)element).Template = (ControlTemplate)element.FindResource("Floating"); element.Orientation = 0; element.CanRotate = false; this.view.Items.Add(element); }
private void HandleDockingFromTouch(ScatterViewItem item,Point p) { if (p.X < _leftDockTreshhold) { item.Template = (ControlTemplate)item.FindResource("Docked"); DocumentContainer.SetDockState(item, DockStates.Left); } else if (p.X > _rightDockTreshhold) { item.Template = (ControlTemplate)item.FindResource("Docked"); DocumentContainer.SetDockState(item, DockStates.Right); } else if (p.Y < _upperDockThreshold) { item.Template = (ControlTemplate)item.FindResource("Docked"); DocumentContainer.SetDockState(item, DockStates.Top); } else { item.Template = (ControlTemplate)item.FindResource("Floating"); DocumentContainer.SetDockState(item, DockStates.Floating); } UpdateDock(item); }