Category / Section
How to control the FullRowSelect for individual nodes in WinForms TreeViewAdv?
1 min read
Customize the node background
This can be done by customizing the node background in the NodeBackGroundPaint event.
C#
private void treeViewAdv1_BeforeNodePaint(object sender, Syncfusion.Windows.Forms.Tools.TreeNodeAdvPaintEventArgs e) { e.Active=false; } private void treeViewAdv1_NodeBackgroundPaint(object sender, Syncfusion.Windows.Forms.Tools.TreeNodeAdvPaintBackgroundEventArgs e) { Pen p=new Pen(Color.Red); p.DashStyle=DashStyle.Dot; if(this.treeViewAdv1.Nodes[0]!=e.Node) { if(e.Selected) { // Draw the beige background. e.Graphics.FillRectangle(new SolidBrush(Color.RosyBrown), e.Bounds); e.Graphics.DrawRectangle(p,e.Bounds); } } else { if(e.Selected) { e.Graphics.FillRectangle(new SolidBrush(Color.RosyBrown), e.Node.TextBounds); e.Graphics.DrawRectangle(p,e.Node.TextBounds); } } e.Handled = true; }
VB
Private Sub treeViewAdv1_BeforeNodePaint(ByVal sender As Object, ByVal e As Syncfusion.Windows.Forms.Tools.TreeNodeAdvPaintEventArgs) e.Active=False End Sub Private Sub treeViewAdv1_NodeBackgroundPaint(ByVal sender As Object, ByVal e As Syncfusion.Windows.Forms.Tools.TreeNodeAdvPaintBackgroundEventArgs) Dim p As Pen = New Pen(Color.Red) p.DashStyle=DashStyle.Dot If Me.treeViewAdv1.Nodes(0)<> e.Node Then If e.Selected Then ' Draw the beige background. e.Graphics.FillRectangle(New SolidBrush(Color.RosyBrown), e.Bounds) e.Graphics.DrawRectangle(p,e.Bounds) End If Else If e.Selected Then e.Graphics.FillRectangle(New SolidBrush(Color.RosyBrown), e.Node.TextBounds) e.Graphics.DrawRectangle(p,e.Node.TextBounds) End If End If e.Handled = True End Sub