
DiagramPanel
is the central class of a Diagram, holding all of the Layers of Parts, responsible for translation (scrolling) and scaling (zooming) and alignment, keeping track of the diagram's bounds, and having various hit-testing methods used to search the diagram for particular elements.[Localizability(LocalizationCategory.Ignore)] [ContentProperty("Children")] [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 DiagramPanel : System.Windows.Controls.Panel
A DiagramPanel
must be in the ControlTemplate
of a Diagram. Both the Diagram and the DiagramPanel
are useless without each other.
Because DiagramPanel
is a Panel
, you can define the layers of this panel in XAML by placing them nested within the definition of the <DiagramPanel>
element. If you do not define any layers explicitly, the InitializeLayers method will create the standard nine layers: "Background" nodes and links, default ("") nodes and links, "Foreground" nodes and links, "Tool" nodes and links, and "Adornment" nodes.
This class is also responsible for mouse input. It redirects mouse events to the Diagram's CurrentTool.
You may not apply any transforms to a Layer; that is reserved for GoXam's use. This panel's Background
is also reserved for GoXam's use.
System.Object
System.Windows.Threading.DispatcherObject
System.Windows.DependencyObject
System.Windows.Media.Visual
System.Windows.UIElement
System.Windows.FrameworkElement
System.Windows.Controls.Panel
Northwoods.GoXam.DiagramPanel