ExpansionIndicatorSize, ExpansionIndicatorPadding, and Indent are closely related and the behavior of these three properties depends on the DisplayStyle.
When DisplayStlye is Standard, the actual indentation of the nodes in the tree will be the Indent property, unless the Indent is too small. If the Indent property value is too small to fit the ExpansionIndicatorSize and it's padding, then it will be enlarged to fit.
When DisplayStlye is WindowsVista, the Indent property is ignored, and the indentation is automatically calculated to fit the ExpansionIndicatorSize and ExpansionIndicatorPadding.
Note: When using Themes, the expansion indicators are drawn using the Windows Theme API. Themed expansion indicators have a maximum size of 9x9 and must be square (not rectangular). Specifying a larger size will leave extra padding around the expansion indicator, but the drawn image will not get any bigger.
Imports Infragistics.Win.UltraWinTree ' Define the width and height of the expansion indicators. All of the images need to ' be the same size. Const expansionIndicatorImageWidth As Integer = 15 Const expansionIndicatorImageHeight As Integer = 15 ' Set the ExpansionIndicatorSize on the tree. Me.ultraTree1.ExpansionIndicatorSize = New Size(expansionIndicatorImageWidth, expansionIndicatorImageHeight) ' Set the ExpansionIndicatorPadding. Me.ultraTree1.ExpansionIndicatorPadding = 3 ' Tell the tree to hide the expansion indicators whenever the mouse is not over it. Me.ultraTree1.HideExpansionIndicators = HideExpansionIndicators.OnMouseLeave ' Create a rect one pixel smaller than the size of the indicators. We will use this to ' draw the ellipses in the indicator images so they don't get clipped. Dim expansionIndicatorImageRect As Rectangle = New Rectangle(0, 0, expansionIndicatorImageWidth - 1, expansionIndicatorImageHeight - 1) ' Create a new bitmap for each state of the expansion indicators. Dim expansionIndicatorImageCollapsed As Bitmap = New Bitmap(expansionIndicatorImageWidth, expansionIndicatorImageHeight) Dim expansionIndicatorImageExpanded As Bitmap = New Bitmap(expansionIndicatorImageWidth, expansionIndicatorImageHeight) Dim expansionIndicatorImageCollapsedHotTracked As Bitmap = New Bitmap(expansionIndicatorImageWidth, expansionIndicatorImageHeight) Dim expansionIndicatorImageExpandedHotTracked As Bitmap = New Bitmap(expansionIndicatorImageWidth, expansionIndicatorImageHeight) ' Draw the collapsed expansion indicator image. ' A red circle. Dim g As Graphics = Nothing Try g = Graphics.FromImage(expansionIndicatorImageCollapsed) g.Clear(Color.Transparent) g.FillEllipse(Brushes.Red, expansionIndicatorImageRect) Finally If Not g Is Nothing Then g.Dispose() End If End Try ' Draw the expanded expansion indicator image. ' A green circle. Try g = Graphics.FromImage(expansionIndicatorImageExpanded) g.Clear(Color.Transparent) g.FillEllipse(Brushes.Green, expansionIndicatorImageRect) Finally If Not g Is Nothing Then g.Dispose() End If End Try ' Draw the collapsed expansion indicator image. ' A red circle with a black border around it. Try g = Graphics.FromImage(expansionIndicatorImageCollapsedHotTracked) g.Clear(Color.Transparent) g.FillEllipse(Brushes.Red, expansionIndicatorImageRect) g.DrawEllipse(Pens.Black, expansionIndicatorImageRect) Finally If Not g Is Nothing Then g.Dispose() End If End Try ' Draw the collapsed expansion indicator image. ' A green circle with a black border around it. Try g = Graphics.FromImage(expansionIndicatorImageExpandedHotTracked) g.Clear(Color.Transparent) g.FillEllipse(Brushes.Green, expansionIndicatorImageRect) g.DrawEllipse(Pens.Black, expansionIndicatorImageRect) Finally If Not g Is Nothing Then g.Dispose() End If End Try ' Assign the images to the tree. Me.ultraTree1.ExpansionIndicatorImageCollapsed = expansionIndicatorImageCollapsed Me.ultraTree1.ExpansionIndicatorImageExpanded = expansionIndicatorImageExpanded Me.ultraTree1.ExpansionIndicatorImageCollapsedHotTracked = expansionIndicatorImageCollapsedHotTracked Me.ultraTree1.ExpansionIndicatorImageExpandedHotTracked = expansionIndicatorImageExpandedHotTracked
using Infragistics.Win.UltraWinTree; // Define the width and height of the expansion indicators. All of the images need to // be the same size. const int expansionIndicatorImageWidth = 15; const int expansionIndicatorImageHeight = 15; // Set the ExpansionIndicatorSize on the tree. this.ultraTree1.ExpansionIndicatorSize = new Size(expansionIndicatorImageWidth, expansionIndicatorImageHeight); // Set the ExpansionIndicatorPadding. this.ultraTree1.ExpansionIndicatorPadding = 3; // Tell the tree to hide the expansion indicators whenever the mouse is not over it. this.ultraTree1.HideExpansionIndicators = HideExpansionIndicators.OnMouseLeave; // Create a rect one pixel smaller than the size of the indicators. We will use this to // draw the ellipses in the indicator images so they don't get clipped. Rectangle expansionIndicatorImageRect = new Rectangle(0, 0, expansionIndicatorImageWidth-1, expansionIndicatorImageHeight-1); // Create a new bitmap for each state of the expansion indicators. Bitmap expansionIndicatorImageCollapsed = new Bitmap(expansionIndicatorImageWidth, expansionIndicatorImageHeight); Bitmap expansionIndicatorImageExpanded = new Bitmap(expansionIndicatorImageWidth, expansionIndicatorImageHeight); Bitmap expansionIndicatorImageCollapsedHotTracked = new Bitmap(expansionIndicatorImageWidth, expansionIndicatorImageHeight); Bitmap expansionIndicatorImageExpandedHotTracked = new Bitmap(expansionIndicatorImageWidth, expansionIndicatorImageHeight); // Draw the collapsed expansion indicator image. // A red circle. using(Graphics g = Graphics.FromImage(expansionIndicatorImageCollapsed)) { g.Clear(Color.Transparent); g.FillEllipse(Brushes.Red, expansionIndicatorImageRect); } // Draw the expanded expansion indicator image. // A green circle. using (Graphics g = Graphics.FromImage(expansionIndicatorImageExpanded)) { g.Clear(Color.Transparent); g.FillEllipse(Brushes.Green, expansionIndicatorImageRect); } // Draw the collapsed expansion indicator image. // A red circle with a black border around it. using (Graphics g = Graphics.FromImage(expansionIndicatorImageCollapsedHotTracked)) { g.Clear(Color.Transparent); g.FillEllipse(Brushes.Red, expansionIndicatorImageRect); g.DrawEllipse(Pens.Black, expansionIndicatorImageRect); } // Draw the collapsed expansion indicator image. // A green circle with a black border around it. using (Graphics g = Graphics.FromImage(expansionIndicatorImageExpandedHotTracked)) { g.Clear(Color.Transparent); g.FillEllipse(Brushes.Green, expansionIndicatorImageRect); g.DrawEllipse(Pens.Black, expansionIndicatorImageRect); } // Assign the images to the tree. this.ultraTree1.ExpansionIndicatorImageCollapsed = expansionIndicatorImageCollapsed; this.ultraTree1.ExpansionIndicatorImageExpanded = expansionIndicatorImageExpanded; this.ultraTree1.ExpansionIndicatorImageCollapsedHotTracked = expansionIndicatorImageCollapsedHotTracked; this.ultraTree1.ExpansionIndicatorImageExpandedHotTracked = expansionIndicatorImageExpandedHotTracked;
Target Platforms: Windows 10, Windows 8.1, Windows 8, Windows 7, Windows Server 2012, Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
UltraTree Class
UltraTree Members
ExpansionIndicatorImageCollapsed Property
ExpansionIndicatorImageCollapsedHotTracked Property
ExpansionIndicatorImageExpanded Property
ExpansionIndicatorImageExpandedHotTracked Property
ExpansionIndicatorSize Property
ExpansionIndicatorPadding Property
ShowExpansionIndicator Property
HideExpansionIndicators Property