We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date
close icon

When click on a node, the connector path will be highlighted

Hi,

I am working on Asp.Net Flow process control. As per my requirement, When click on a node the whole connector path will be highlighted from clicked node to the parent node(start node).

Please help me.

Thanks in advance.

Regards,
Raja


3 Replies

RA Raja February 14, 2011 11:47 AM UTC

Hi,

When click on the node, how to change the node connector color from clicked node to parent node(start node)?

Thanks in advance.




BM Bala Murugan A.S Syncfusion Team February 16, 2011 05:41 AM UTC

Hi Raja,

Thank your for your interest in Syncfusion Products,

We glad to inform you that we have achieve your requirement and the same can be downloaded from the below link.
NodeHighlight1293097900.zip

In the above sample if you click any of the node then path from clicked node to start node will be highlighted.
Please refer the below code snippet to achieve this.

[C#]
this.DiagramWebControl1.NodeClick += new Syncfusion.Web.UI.WebControls.Diagram.NodeClickEventHandler(DiagramWebControl1_NodeClick);

void DiagramWebControl1_NodeClick(object sender, Syncfusion.Web.UI.WebControls.Diagram.NodeClickEventArgs e)
{
Node clickNode=e.Node;
if (clickNode != null && clickNode is FilledPath || clickNode is ConnectorBase)
{
foreach (Node modelNode in this.DiagramWebControl1.Model.Nodes)
{
if (modelNode is ConnectorBase)
{
((ConnectorBase)modelNode).LineStyle.LineColor = Color.DarkBlue;
((ConnectorBase)modelNode).LineStyle.LineWidth = 1f;
}
if (modelNode is FilledPath)
((FilledPath)modelNode).FillStyle.Color = Color.PowderBlue;
}

if (clickNode is FilledPath || clickNode is ConnectorBase)
HighLightNode(clickNode);
}
}

private void HighLightNode(Node HNode)
{
IGraphNode thisNode = HNode as IGraphNode;
((FilledPath)thisNode).FillStyle.Color = Color.Red;

if (thisNode != null)
{
ICollection edgesLeaving = thisNode.EdgesEntering;
if (edgesLeaving != null)
{
foreach (IGraphEdge curEdge in edgesLeaving)
{
// Get from IGraphEdge link.
ConnectorBase link = curEdge as ConnectorBase;
link.LineStyle.LineColor = Color.HotPink;
link.LineStyle.LineWidth = 2f;
Node node = link.FromNode as Node;
HighLightNode(node);
}
}
}
}


Please let me know if you have any concerns.

Regards,
Bala Murugan A.S



RA Raja February 17, 2011 06:14 AM UTC

Thank You. It works fine.


Loader.
Live Chat Icon For mobile
Up arrow icon