Hi Hanne,
Sorry for the delay in getting back to you. If your intention is to change the location of the layout symbols then you have to customize the LayoutManager class. You can override the UpdateLayout method and you can set the custom location of your symbols. We could not relocate the symbols in DirectedTreeLayOut. I have provide the code snippet for your reference.
public class DiagramLayoutManager : LayoutManager
{
public DiagramLayoutManager(Model mdl) : base(mdl)
{
}
public override bool UpdateLayout(object contextInfo)
{
bool changesMade = true;
if(this.Model != null)
{
ArrayList topRanking = new ArrayList();
foreach (INode curNode in this.Model.Nodes)
{
MyTextSymbol expsymbol = curNode as MyTextSymbol;
topRanking.Add(expsymbol);
}
float curLeft = this.Model.Bounds.Left;
float curRight = curLeft;
foreach(MyTextSymbol curMember in topRanking)
{
this.PositionMember(curMember);
curLeft = curRight;
}
}
private void PositionMember(MyTextSymbol expsymbol)
{
if(expsymbol!=null)
{
if(expsymbol.Name=="NodeA")
{
expsymbol.X=280;
expsymbol.Y=250;
}
if(expsymbol.Name=="NodeB")
{
expsymbol.X=150;
expsymbol.Y=350;
}
}
I have attached the sample that demonstrates this completely. Please refer to it and let me know if you have any questions.
Thanks for using Syncfusion product.
Regards,
Nagaraj
Layout Diagram.zip