Skip to main content
All docs
V25.1
  • ASPxDiagram.NodeDataSourceID Property

    Specifies the ID of the control from which the ASPxDiagram control retrieves information about nodes.

    Namespace: DevExpress.Web.ASPxDiagram

    Assembly: DevExpress.Web.ASPxDiagram.v25.1.dll

    #Declaration

    [DefaultValue("")]
    public virtual string NodeDataSourceID { get; set; }

    #Property Value

    Type Default Description
    String String.Empty

    The control ID.

    #Remarks

    Use the Mappings.Node property to specify node mapping properties.

    <dx:ASPxDiagram ID="Diagram" runat="server" Width="100%" Height="600px" Units="In"
        NodeDataSourceID="FlowNodeDataSource" EdgeDataSourceID="FlowEdgeDataSource" 
        OnNodeInserted="Diagram_ItemInserted" OnEdgeInserted="Diagram_ItemInserted" >
        <SettingsAutoLayout Type="Layered" Orientation="Vertical" />
        <Mappings>
            <Node Key="ID" Type="Type" Width="Width" Height="Height" />
            <Edge Key="ID" FromKey="FromID" ToKey="ToID" Text="Text" />
        </Mappings>
    </dx:ASPxDiagram>
    <ef:EntityDataSource runat="server" ID="FlowNodeDataSource" ContextTypeName="DevExpress.Web.Demos.FlowContextSL" 
      EntitySetName="Nodes" EnableDelete="True" EnableInsert="True" EnableUpdate="True" OnInserted="FlowItemDataSource_Inserted">
    </ef:EntityDataSource>
    <ef:EntityDataSource runat="server" ID="FlowEdgeDataSource" ContextTypeName="DevExpress.Web.Demos.FlowContextSL" 
      EntitySetName="Edges" EnableDelete="True" EnableInsert="True" EnableUpdate="True" OnInserted="FlowItemDataSource_Inserted">
    </ef:EntityDataSource>
    

    Important

    When you bind the ASPxDiagram control to a data source, ensure that the KeyValue property is specified.

    protected void FlowItemDataSource_Inserted(object sender, Microsoft.AspNet.EntityDataSource.EntityDataSourceChangedEventArgs e) {
        if (e.Entity is FlowEntity)
            lastInsertedId = ((FlowEntity)e.Entity).ID;
    }
    
    protected void Diagram_ItemInserted(object sender, DevExpress.Web.ASPxDiagram.DiagramItemInsertedEventArgs e) {
        e.KeyValue = lastInsertedId;
    }
    

    Run Demo: Node and Edge Data Sources

    See Also