TreeNodeStyle.ChildNodesPadding Property

 

Gets or sets the amount of space between a parent node and a child node to which the TreeNodeStyle class is applied.

Namespace:   System.Web.UI.WebControls
Assembly:  System.Web (in System.Web.dll)

public Unit ChildNodesPadding { get; set; }

Property Value

Type: System.Web.UI.WebControls.Unit

The amount of space, in pixels, that is above and below the child nodes section of a parent node. The default is 0 pixels.

Exception Condition
ArgumentOutOfRangeException

The selected value is of type Percentage or is less than 0.

Use the ChildNodesPadding property to control the amount of space above and below the child nodes section of the node to which the TreeNodeStyle class is applied. This spacing is inserted between the parent node and its first child node, as well as between its last child node and the next node.

System_CAPS_noteNote

The space after the last child node is not rendered if there are no additional nodes following the last child node, because this would leave an unnecessary gap at the bottom of the control.

To control the amount of space between child nodes, use the NodeSpacing property.

The value of this property is stored in view state.

The following code example demonstrates how to use the ChildNodesPadding property to specify the space above and below the child nodes section of a parent node.


<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  void HorizontalPadding_Changed(Object sender, EventArgs e)
  {

    // Programmatically set the HorizontalPadding property based on the 
    // user's selection.
    ItemsTreeView.ParentNodeStyle.HorizontalPadding = Convert.ToInt32(HorizontalPaddingList.SelectedItem.Text);

  }

  void VerticalPadding_Changed(Object sender, EventArgs e)
  {

    // Programmatically set the VerticalPadding property based on the 
    // user's selection.
    ItemsTreeView.ParentNodeStyle.VerticalPadding = Convert.ToInt32(VerticalPaddingList.SelectedItem.Text);

  }

  void NodeSpacing_Changed(Object sender, EventArgs e)
  {

    // Programmatically set the NodeSpacing property based on the 
    // user's selection.
    ItemsTreeView.ParentNodeStyle.NodeSpacing = Convert.ToInt32(NodeSpacingList.SelectedItem.Text);

  }

  void ChildNodePadding_Changed(Object sender, EventArgs e)
  {

    // Programmatically set the ChildNodesPadding property based on the 
    // user's selection.
    ItemsTreeView.ParentNodeStyle.ChildNodesPadding = Convert.ToInt32(ChildNodesPaddingList.SelectedItem.Text);

  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>TreeNodeStyle Example</title>
</head>
<body>  
    <form id="form1" runat="server">

      <h3>TreeNodeStyle Example</h3>

      <!-- Set the styles for the leaf nodes declaratively. -->
      <asp:TreeView id="ItemsTreeView"
        Font-Names= "Arial"
        ForeColor="Blue"
        ParentNodeStyle-ForeColor="Green"
        ParentNodeStyle-HorizontalPadding="5" 
        ParentNodeStyle-VerticalPadding="5"  
        ParentNodeStyle-NodeSpacing="5"
        ParentNodeStyle-ChildNodesPadding="5"
        ExpandDepth="4"  
        runat="server">

        <Nodes>

          <asp:TreeNode Text="Table of Contents"
            SelectAction="None">

            <asp:TreeNode Text="Chapter One">

              <asp:TreeNode Text="Section 1.0">

                <asp:TreeNode Text="Topic 1.0.1"/>
                <asp:TreeNode Text="Topic 1.0.2"/>
                <asp:TreeNode Text="Topic 1.0.3"/>

              </asp:TreeNode>

              <asp:TreeNode Text="Section 1.1">

                <asp:TreeNode Text="Topic 1.1.1"/>
                <asp:TreeNode Text="Topic 1.1.2"/>
                <asp:TreeNode Text="Topic 1.1.3"/>
                <asp:TreeNode Text="Topic 1.1.4"/>

              </asp:TreeNode>

            </asp:TreeNode>

          </asp:TreeNode>

        </Nodes>

      </asp:TreeView>

      <hr />

      <h5>Select the style settings for the parent nodes.</h5>

      <table cellpadding="5">

        <tr align="right">

          <td>

            Horizontal Padding:

            <asp:DropDownList id="HorizontalPaddingList"
              AutoPostBack="true"
              OnSelectedIndexChanged="HorizontalPadding_Changed" 
              runat="server">

              <asp:ListItem>0</asp:ListItem>
              <asp:ListItem Selected="true">5</asp:ListItem>
              <asp:ListItem>10</asp:ListItem>

            </asp:DropDownList> 

          </td>

          <td>

            Vertical Padding:

            <asp:DropDownList id="VerticalPaddingList"
              AutoPostBack="true"
              OnSelectedIndexChanged="VerticalPadding_Changed" 
              runat="server">

              <asp:ListItem>0</asp:ListItem>
              <asp:ListItem Selected="true">5</asp:ListItem>
              <asp:ListItem>10</asp:ListItem>

            </asp:DropDownList> 

          </td>

        </tr>

        <tr align="right">

          <td>

            Node Spacing:

            <asp:DropDownList id="NodeSpacingList"
              AutoPostBack="true"
              OnSelectedIndexChanged="NodeSpacing_Changed"   
              runat="server">

              <asp:ListItem>0</asp:ListItem>
              <asp:ListItem Selected="true">5</asp:ListItem>
              <asp:ListItem>10</asp:ListItem>

            </asp:DropDownList> 

          </td>

          <td>

            Child Nodes Padding:

            <asp:DropDownList id="ChildNodesPaddingList"
              AutoPostBack="true"
              OnSelectedIndexChanged="ChildNodePadding_Changed"  
              runat="server">

              <asp:ListItem>0</asp:ListItem>
              <asp:ListItem Selected="true">5</asp:ListItem>
              <asp:ListItem>10</asp:ListItem>

            </asp:DropDownList> 

          </td>

        </tr>

      </table>

    </form>
  </body>
</html>

.NET Framework
Available since 2.0
Return to top
Show: