ArcGIS Pro 3.3 API Reference Guide
ArcGIS.Core.Data.NetworkDiagrams Namespace / NetworkDiagram Class / QueryDiagramElements Method / QueryDiagramElements(DiagramElementQueryByElementTypes) Method
The DiagramElementQueryByElementTypes used to search for diagram elements.
Example

In This Topic
    QueryDiagramElements(DiagramElementQueryByElementTypes) Method
    In This Topic
    Query diagram elements contained in this network diagram. This method must be called on the MCT. Use QueuedTask.Run.
    Syntax
    Public Overloads Function QueryDiagramElements( _
       ByVal query As DiagramElementQueryByElementTypes _
    ) As DiagramElementQueryResult

    Parameters

    query
    The DiagramElementQueryByElementTypes used to search for diagram elements.

    Return Value

    A DiagramElementQueryResult containing the queried diagram elements.
    Exceptions
    ExceptionDescription
    A geodatabase-related exception has occurred.
    Example
    Change the Layout of a Network Diagram
    public void DiagramElementQueryResultAndNetworkDiagramSubsetClasses(Geodatabase geodatabase, DiagramManager diagramManager, string diagramName)
    {
      // Retrieve a diagram
      using (NetworkDiagram diagramTest = diagramManager.GetNetworkDiagram(diagramName))
      {
        // Create a DiagramElementQueryByElementTypes query object to get the diagram elements we want to work with
        DiagramElementQueryByElementTypes query = new DiagramElementQueryByElementTypes();
        query.QueryDiagramJunctionElement = true;
        query.QueryDiagramEdgeElement = true;
        query.QueryDiagramContainerElement = true;
    
        // Retrieve those diagram elements
        DiagramElementQueryResult elements = diagramTest.QueryDiagramElements(query);
    
        // Create a NetworkDiagramSubset object to edit this set of diagram elements
        NetworkDiagramSubset subset = new NetworkDiagramSubset();
        subset.DiagramJunctionElements = elements.DiagramJunctionElements;
        subset.DiagramEdgeElements = elements.DiagramEdgeElements;
        subset.DiagramContainerElements = elements.DiagramContainerElements;
    
        // Edit the shapes of the diagram elements - left as an exercise for the student
        TranslateDiagramElements(subset);
    
        // Save the new layout of the diagram elements
        diagramTest.SaveLayout(subset, true);
      }
    }
    Requirements

    Target Platforms: Windows 11, Windows 10

    ArcGIS Pro version: 3 or higher.
    See Also