
DragSelectingTool
lets the user select multiple parts within a rectangular area drawn by the user.[DesignTimeVisible(false)] [StyleTypedProperty(Property="FocusVisualStyle", StyleTargetType=System.Windows.Controls.Control)] [XmlLangProperty("Language")] [UsableDuringInitialization(true)] [RuntimeNameProperty("Name")] [UidProperty("Uid")] [TypeDescriptionProvider(MS.Internal.ComponentModel.DependencyObjectProvider)] [NameScopeProperty("NameScope", System.Windows.NameScope)] public class DragSelectingTool : DiagramTool, IDiagramTool
This is a standard mouse-move tool, the Northwoods.GoXam.Diagram.DragSelectingTool. However this cannot start running unless there has been a motionless delay after the mouse-down event of at least Delay milliseconds.
For example, you can change the selection policy in XAML by: <go:Diagram ...> <go:Diagram.DragSelectingTool> <go:DragSelectingTool Include="Intersects" /> </go:Diagram.DragSelectingTool> </go:Diagram>
Or you can customize the default Northwoods.GoXam.Diagram.DragSelectingTool in code: myDiagram.DragSelectingTool.Include = SearchInclusion.Intersects;
Selection occurs on a mouse up calling SelectInRect with the value of ComputeBoxBounds. If you want real-time selection to occur during the drag: public class RealtimeDragSelectingTool : DragSelectingTool { public override void DoMouseMove() { base.DoMouseMove(); if (this.Active) SelectInRect(ComputeBoxBounds()); } }
and install in XAML by: <go:Diagram ...> <go:Diagram.DragSelectingTool> <local:RealtimeDragSelectingTool Include="Intersects" /> </go:Diagram.DragSelectingTool> </go:Diagram>
Or you can install in code by: myDiagram.DragSelectingTool = new RealtimeDragSelectingTool() { Include = SearchInclusion.Intersects };
This tool does not utilize any Northwoods.GoXam.Adornments or tool handles.
This tool does not edit the model.
System.Object
System.Windows.Threading.DispatcherObject
System.Windows.DependencyObject
System.Windows.Media.Visual
System.Windows.UIElement
System.Windows.FrameworkElement
Northwoods.GoXam.Tool.DiagramTool
Northwoods.GoXam.Tool.DragSelectingTool