WPF

Upgrade Guide User Guide Demos Support Forums Download
  • Upgrade Guide
  • User Guide
  • Demos
  • Support
  • Forums
  • Download
Class RadialTreeLayout - WPF API Reference | Syncfusion

    Show / Hide Table of Contents

    Class RadialTreeLayout

    Represents a class to arrange the nodes and connectors automatically in a circular tree structure.

    Inheritance
    System.Object
    LayoutBase
    TreeLayoutBase
    RadialTreeLayout
    Implements
    ILayout
    System.ComponentModel.INotifyPropertyChanged
    Inherited Members
    TreeLayoutBase.OnPropertyChanged(String)
    TreeLayoutBase.HorizontalSpacing
    TreeLayoutBase.SpaceBetweenSubTrees
    TreeLayoutBase.VerticalSpacing
    TreeLayoutBase.PropertyChanged
    LayoutBase.Bounds
    LayoutBase.Margin
    LayoutBase.HorizontalAlignment
    LayoutBase.VerticalAlignment
    System.Object.ToString()
    System.Object.Equals(System.Object)
    System.Object.Equals(System.Object, System.Object)
    System.Object.ReferenceEquals(System.Object, System.Object)
    System.Object.GetHashCode()
    System.Object.GetType()
    System.Object.MemberwiseClone()
    Namespace: Syncfusion.UI.Xaml.Diagram.Layout
    Assembly: Syncfusion.SfDiagram.WPF.dll
    Syntax
    public class RadialTreeLayout : TreeLayoutBase, ILayout, IInternalLayout, INotifyPropertyChanged
    Examples

    Below example shows how to create RadialTreeLayout

    • Model.cs
    • MainWindow.xaml
    public class Employee
    {
        public string EmpId { get; set; }
        public string Imageurl { get; set; }
        public string ParentId { get; set; }
    }
    
    public class Employees : ObservableCollection<Employee>
    {
    }
    <!--Initialize employee collection-->            
    <local:Employees x:Key="employees">                
    <local:Employee EmpId = "1" ParentId = "" Imageurl = "./Assets/Thomas.png" />
    <local:Employee EmpId = "2" ParentId = "1" Imageurl = "./Assets/Clayton.png" />
    <local:Employee EmpId = "3" ParentId = "1" Imageurl = "./Assets/eric.png" />
    <local:Employee EmpId = "4" ParentId = "1" Imageurl = "./Assets/John.png" />
    <local:Employee EmpId = "5" ParentId = "1" Imageurl = "./Assets/image12.png" />
    <local:Employee EmpId = "6" ParentId = "1" Imageurl = "./Assets/image2.png" />
    <local:Employee EmpId = "7" ParentId = "1" Imageurl = "./Assets/image3.png" />
    <local:Employee EmpId = "8" ParentId = "1" Imageurl = "./Assets/image50.png" />
    <local:Employee EmpId = "9" ParentId = "2" Imageurl = "./Assets/image51.png" />
    <local:Employee EmpId = "10" ParentId = "2" Imageurl = "./Assets/image53.png" />
    <local:Employee EmpId = "11" ParentId = "3" Imageurl = "./Assets/image54.png" />
    <local:Employee EmpId = "12" ParentId = "3" Imageurl = "./Assets/image55.png" />
    <local:Employee EmpId = "13" ParentId = "4" Imageurl = "./Assets/image56.png" />
    <local:Employee EmpId = "14" ParentId = "4" Imageurl = "./Assets/image57.png" />
    <local:Employee EmpId = "15" ParentId = "5" Imageurl = "./Assets/images7.png" />
    <local:Employee EmpId = "16" ParentId = "5" Imageurl = "./Assets/images9.png" />
    <local:Employee EmpId = "17" ParentId = "6" Imageurl = "./Assets/Jenny.png" />
    <local:Employee EmpId = "18" ParentId = "6" Imageurl = "./Assets/John.png" />
    <local:Employee EmpId = "19" ParentId = "7" Imageurl = "./Assets/eric.png" />
    <local:Employee EmpId = "20" ParentId = "7" Imageurl = "./Assets/Maria.png" />
    <local:Employee EmpId = "21" ParentId = "8" Imageurl = "./Assets/image12.png" />
    <local:Employee EmpId = "22" ParentId = "8" Imageurl = "./Assets/Paul.png" />
    <local:Employee EmpId = "23" ParentId = "9" Imageurl = "./Assets/Robin.png" />
    <local:Employee EmpId = "24" ParentId = "9" Imageurl = "./Assets/smith.png" />
    <local:Employee EmpId = "25" ParentId = "10" Imageurl = "./Assets/Thomas.png" />
    <local:Employee EmpId = "26" ParentId = "10" Imageurl = "./Assets/Clayton.png" />
    <local:Employee EmpId = "27" ParentId = "11" Imageurl = "./Assets/eric.png" />
    <local:Employee EmpId = "28" ParentId = "11" Imageurl = "./Assets/images7.png" />
    <local:Employee EmpId = "29" ParentId = "12" Imageurl = "./Assets/image12.png" />
    <local:Employee EmpId = "30" ParentId = "12" Imageurl = "./Assets/image2.png" />    
    </local:Employees>
    <!--Initializes the DataSourceSettings -->
    <Syncfusion:DataSourceSettings x:Key="dataSourceSettings" 
                             ParentId="ParentId" Id="EmpId"
                              DataSource="{StaticResource employees}" 
                           Root="1"/>
    <!--Initialize the Layout-->
    <Syncfusion:RadialTreeLayout x:Key="treeLayout" 
                                HorizontalSpacing="30" 
                               VerticalSpacing="50" />
    <!--Initialize the Layout Manager-->
    <Syncfusion:LayoutManager x:Key="layoutManager" Layout="{StaticResource treeLayout}" />  
    
     <!--Initialize Diagram-->
       <Syncfusion:SfDiagram x:Name="Diagram"
                             DataSourceSettings="{Binding dataSourceSettings}"
                                 LayoutManager="{Binding layoutManager}"/>

    Constructors

    RadialTreeLayout()

    Initializes the new instance of the RadialTreeLayout class.

    Declaration
    public RadialTreeLayout()

    Properties

    LayoutRoot

    Gets or sets the root node of the layout.

    Declaration
    public override object LayoutRoot { get; set; }
    Property Value
    Type Description
    System.Object
    Overrides
    TreeLayoutBase.LayoutRoot

    Methods

    InvalidateLayout()

    Invalidates the arrange state (layout) for the element. After the invalidation, the element will have its layout updated, which will occur asynchronously unless subsequently forced by UpdateLayout().

    Declaration
    public override void InvalidateLayout()
    Overrides
    LayoutBase.InvalidateLayout()

    UpdateLayout()

    Method to update the currently arranged Nodes and Connectors.

    Declaration
    public override void UpdateLayout()
    Overrides
    LayoutBase.UpdateLayout()

    UpdateLayout(Object)

    Method to update the currently arranged Nodes and Connectors.

    Declaration
    public override void UpdateLayout(object fixedNode)
    Parameters
    Type Name Description
    System.Object fixedNode

    The node which is used as anchor to layout

    Overrides
    LayoutBase.UpdateLayout(Object)

    Implements

    ILayout
    System.ComponentModel.INotifyPropertyChanged
    Back to top Generated by DocFX
    Copyright © 2001 - 2021 Syncfusion Inc. All Rights Reserved