Back to Devexpress

DiagramControl.Stencils Property

wpf-devexpress-dot-xpf-dot-diagram-dot-diagramcontrol-ae0fb997.md

latest3.3 KB
Original Source

DiagramControl.Stencils Property

Provides access to the collection of available stencils. This is a dependency property.

Namespace : DevExpress.Xpf.Diagram

Assembly : DevExpress.Xpf.Diagram.v25.2.dll

NuGet Package : DevExpress.Wpf.Diagram

Declaration

csharp
[Browsable(false)]
public DiagramStencilCollection Stencils { get; set; }
vb
<Browsable(False)>
Public Property Stencils As DiagramStencilCollection

Property Value

TypeDescription
DevExpress.Diagram.Core.DiagramStencilCollection

A DevExpress.Diagram.Core.DiagramStencilCollection object that is the collection of available stencils.

|

Remarks

Use the Stencils property to register new or remove the default stencils.

See the example below.

csharp
var svgStencil = new DiagramStencil("SVGStencilId", "SVGStencilName");
using(var svgStream = File.OpenRead("Shape.svg")) {
    var svgShape = ShapeDescription.CreateSvgShape("SVGShapeId", "SVGShapeName", svgStream);
    svgStencil.RegisterShape(svgShape);
}
diagramControl.Stencils = new DiagramStencilCollection(svgStencil, BasicShapes.Stencil);
vb
Dim svgStencil = New DiagramStencil("SVGStencilId", "SVGStencilName")
Using svgStream = File.OpenRead("Shape.svg")
    Dim svgShape = ShapeDescription.CreateSvgShape("SVGShapeId", "SVGShapeName", svgStream)
    svgStencil.RegisterShape(svgShape)
End Using
diagramControl.Stencils = New DiagramStencilCollection(svgStencil, BasicShapes.Stencil)

If the Stencils property is set to null , the diagram toolbox loads its stencils from the DiagramToolboxRegistrator.Stencils static collection.

The following code snippet (auto-collected from DevExpress Examples) contains a reference to the Stencils property.

Note

The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.

wpf-diagram-create-custom-diagram-containers/CS/DXDiagram.CreateCustomContainers/MainWindow.xaml.cs#L23

csharp
var customContainersStencil = DiagramStencil.Create(MyContainersStencilName, "Custom Containers", containerDescriptions);
diagramControl.Stencils = new DiagramStencilCollection(DiagramToolboxRegistrator.Stencils.Concat(new[] { customContainersStencil }));
diagramControl.SelectedStencils = new StencilCollection(MyContainersStencilName, BasicShapes.StencilId);

See Also

DiagramControl Class

DiagramControl Members

DevExpress.Xpf.Diagram Namespace