TreeView Klass

Definition

Visar hierarkiska data, till exempel en innehållsförteckning, i en trädstruktur.

public ref class TreeView : System::Web::UI::WebControls::HierarchicalDataBoundControl, System::Web::UI::ICallbackEventHandler, System::Web::UI::IPostBackDataHandler, System::Web::UI::IPostBackEventHandler
[System.Web.UI.ControlValueProperty("SelectedValue")]
public class TreeView : System.Web.UI.WebControls.HierarchicalDataBoundControl, System.Web.UI.ICallbackEventHandler, System.Web.UI.IPostBackDataHandler, System.Web.UI.IPostBackEventHandler
[<System.Web.UI.ControlValueProperty("SelectedValue")>]
type TreeView = class
    inherit HierarchicalDataBoundControl
    interface IPostBackEventHandler
    interface IPostBackDataHandler
    interface ICallbackEventHandler
Public Class TreeView
Inherits HierarchicalDataBoundControl
Implements ICallbackEventHandler, IPostBackDataHandler, IPostBackEventHandler
Arv
Attribut
Implementeringar

Exempel

Det här avsnittet innehåller sju kodexempel:

  • Det första kodexemplet visar hur du konfigurerar ramarna för det andra kodexemplet.

  • Det andra kodexemplet visar hur du använder deklarativ syntax för att visa statiska data i TreeView kontrollen.

  • Det tredje kodexemplet visar hur du TreeView binder kontrollen till en XML-datakälla.

  • Det fjärde kodexemplet innehåller XML-exempeldata för det tredje kodexemplet.

  • Det femte kodexemplet visar hur du använder TreeView kontrollen för webbplatsnavigering genom att binda den till en SiteMapDataSource kontroll.

  • Det sjätte kodexemplet innehåller exempel på webbplatsöversiktsdata för det femte kodexemplet.

  • Det sjunde kodexemplet visar hur du fyller i noderna i TreeView kontrollen från klienten.

Följande kodexempel visar hur du konfigurerar ramarna för följande kodexempel.


<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>TreeView Frameset Example</title>
</head>
         
    <frameset cols="30%, 75%">
   
        <frame title="MenuFrame" name="Menu" src="TreeViewFramecs.aspx"/>
        <frame title="ContentFrame" name="Content" src="Home.aspx"/> 
           
    </frameset>      
   
</html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>TreeView Frameset Example</title>
</head>
         
    <frameset cols="30%, 75%">
   
        <frame title="MenuFrame" name="Menu" src="TreeViewFramevb.aspx"/>
        <frame title="ContentFrame" name="Content" src="Home.aspx"/> 
           
    </frameset>      
   
</html>

I följande kodexempel visas hur du använder deklarativ syntax för att visa statiska data i TreeView kontrollen. Det här exemplet används i ramuppsättningen i föregående exempel för att visa en innehållsförteckning.


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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>TreeView Declarative Syntax Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeView Declarative Syntax Example</h3>
      
      <asp:TreeView id="SampleTreeView" 
        runat="server">
         
        <Nodes>
        
          <asp:TreeNode Value="Home" 
            NavigateUrl="Home.aspx" 
            Text="Home"
            Target="Content" 
            Expanded="True">
             
            <asp:TreeNode Value="Page 1" 
              NavigateUrl="Page1.aspx" 
              Text="Page1"
              Target="Content">
               
              <asp:TreeNode Value="Section 1" 
                NavigateUrl="Section1.aspx" 
                Text="Section 1"
                Target="Content"/>
                 
            </asp:TreeNode>              
            
            <asp:TreeNode Value="Page 2" 
              NavigateUrl="Page2.aspx"
              Text="Page 2"
              Target="Content">
               
            </asp:TreeNode> 
            
          </asp:TreeNode>
        
        </Nodes>
        
      </asp:TreeView>

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

<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>TreeView Declarative Syntax Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeView Declarative Syntax Example</h3>
      
      <asp:TreeView id="SampleTreeView" 
        runat="server">
         
        <Nodes>
        
          <asp:TreeNode Value="Home" 
            NavigateUrl="Home.aspx" 
            Text="Home"
            Target="Content" 
            Expanded="True">
             
            <asp:TreeNode Value="Page 1" 
              NavigateUrl="Page1.aspx" 
              Text="Page1"
              Target="Content">
               
              <asp:TreeNode Value="Section 1" 
                NavigateUrl="Section1.aspx" 
                Text="Section 1"
                Target="Content"/>
                 
            </asp:TreeNode>              
            
            <asp:TreeNode Value="Page 2" 
              NavigateUrl="Page2.aspx"
              Text="Page 2"
              Target="Content">
               
            </asp:TreeNode> 
            
          </asp:TreeNode>
        
        </Nodes>
        
      </asp:TreeView>

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

Följande kodexempel visar hur du TreeView binder kontrollen till en XML-datakälla. För att det här exemplet ska fungera korrekt måste du kopiera XML-exempeldata, som tillhandahålls efter det här kodexemplet, till en fil med namnet Book.xml.


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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>TreeView XML Data Binding Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeView XML Data Binding Example</h3>
    
      <asp:TreeView id="BookTreeView" 
        DataSourceID="BookXmlDataSource"
        runat="server">
         
        <DataBindings>
          <asp:TreeNodeBinding DataMember="Book" TextField="Title"/>
          <asp:TreeNodeBinding DataMember="Chapter" TextField="Heading"/>
          <asp:TreeNodeBinding DataMember="Section" TextField="Heading"/>
        </DataBindings>
         
      </asp:TreeView>

      <asp:XmlDataSource id="BookXmlDataSource"  
        DataFile="Book.xml"
        runat="server">
      </asp:XmlDataSource>
    
    </form>
  </body>
</html>

<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>TreeView XML Data Binding Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeView XML Data Binding Example</h3>
    
      <asp:TreeView id="BookTreeView" 
        DataSourceID="BookXmlDataSource"
        runat="server">
         
        <DataBindings>
          <asp:TreeNodeBinding DataMember="Book" TextField="Title"/>
          <asp:TreeNodeBinding DataMember="Chapter" TextField="Heading"/>
          <asp:TreeNodeBinding DataMember="Section" TextField="Heading"/>
        </DataBindings>
         
      </asp:TreeView>

      <asp:XmlDataSource id="BookXmlDataSource"  
        DataFile="Book.xml"
        runat="server">
      </asp:XmlDataSource>
    
    </form>
  </body>
</html>

Följande kodexempel innehåller XML-exempeldata för föregående exempel.

<Book Title="Book Title">
    <Chapter Heading="Chapter 1">
        <Section Heading="Section 1">
        </Section>
        <Section Heading="Section 2">
        </Section>
    </Chapter>
    <Chapter Heading="Chapter 2">
        <Section Heading="Section 1">
        </Section>
    </Chapter>
</Book>

Följande kodexempel visar hur du använder TreeView kontrollen för webbplatsnavigering genom att binda den till en SiteMapDataSource kontroll. För att det här exemplet ska fungera korrekt måste du kopiera exempelwebbplatsens mappningsdata, som tillhandahålls efter det här kodexemplet, till en fil med namnet Web.sitemap.


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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>TreeView AutoGenerateBindings Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeView AutoGenerateBindings Example</h3>
    
      <!-- Set the AutoGenerateBindings property -->
      <!-- to false declaratively to allow for   -->
      <!-- the user-defined Bindings collection. -->
      <asp:TreeView id="SiteTreeView" 
        DataSourceID="SiteMapSource"
        AutoGenerateDataBindings="False"
        runat="server">
        
        <DataBindings>
        
          <asp:TreeNodeBinding TextField="title" NavigateUrlField="url"/>
        
        </DataBindings>
            
      </asp:TreeView>
      
      <asp:SiteMapDataSource ID="SiteMapSource" runat="server"/>
         
    </form>
  </body>
</html>

<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>TreeView AutoGenerateBindings Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeView AutoGenerateBindings Example</h3>
    
      <!-- Set the AutoGenerateBindings property -->
      <!-- to false declaratively to allow for   -->
      <!-- the user-defined Bindings collection. -->
      <asp:TreeView id="SiteTreeView" 
        DataSourceID="SiteMapSource"
        AutoGenerateDataBindings="False"
        runat="server">
        
        <DataBindings>
        
          <asp:TreeNodeBinding TextField="title" NavigateUrlField="url"/>
        
        </DataBindings>
            
      </asp:TreeView>
      
      <asp:SiteMapDataSource ID="SiteMapSource" runat="server"/>
         
    </form>
  </body>
</html>

I följande kodexempel finns exempel på webbplatsöversiktsdata för föregående kodexempel.

<siteMap>
    <siteMapNode title="Home" description="Home" url="default.aspx">
        <siteMapNode title="Products" description="Products" url="Products.aspx">
            <siteMapNode title="Computers" url="Computers.aspx"/>
            <siteMapNode title="Accessories" url="Accessories.aspx"/>
        </siteMapNode>
    </siteMapNode>
</siteMap>

Följande kodexempel visar hur du fyller i noderna i TreeView kontrollen från klienten. När nodpopulationen på klientsidan är aktiverad fylls noderna dynamiskt på klienten, utan att behöva skicka tillbaka till servern.


<%@ Page Language="C#" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>

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

  void PopulateNode(Object sender, TreeNodeEventArgs e)
  {

    // Call the appropriate method to populate a node at a particular level.
    switch(e.Node.Depth)
    {
      case 0:
        // Populate the first-level nodes.
        PopulateCategories(e.Node);
        break;
      case 1:
        // Populate the second-level nodes.
        PopulateProducts(e.Node);
        break;
      default:
        // Do nothing.
        break;
    }
    
  }

  void PopulateCategories(TreeNode node)
  {
    
    // Query for the product categories. These are the values
    // for the second-level nodes.
    DataSet ResultSet = RunQuery("Select CategoryID, CategoryName From Categories");

    // Create the second-level nodes.
    if(ResultSet.Tables.Count > 0)
    {
    
      // Iterate through and create a new node for each row in the query results.
      // Notice that the query results are stored in the table of the DataSet.
      foreach (DataRow row in ResultSet.Tables[0].Rows)
      {
        
        // Create the new node. Notice that the CategoryId is stored in the Value property 
        // of the node. This will make querying for items in a specific category easier when
        // the third-level nodes are created. 
        TreeNode newNode = new TreeNode();
        newNode.Text = row["CategoryName"].ToString(); 
        newNode.Value = row["CategoryID"].ToString();        

        // Set the PopulateOnDemand property to true so that the child nodes can be 
        // dynamically populated.
        newNode.PopulateOnDemand = true;
        
        // Set additional properties for the node.
        newNode.SelectAction = TreeNodeSelectAction.Expand;
        
        // Add the new node to the ChildNodes collection of the parent node.
        node.ChildNodes.Add(newNode);
        
      }
      
    }
    
  }

  void PopulateProducts(TreeNode node)
  {

    // Query for the products of the current category. These are the values
    // for the third-level nodes.
    DataSet ResultSet = RunQuery("Select ProductName From Products Where CategoryID=" + node.Value);

    // Create the third-level nodes.
    if(ResultSet.Tables.Count > 0)
    {
    
      // Iterate through and create a new node for each row in the query results.
      // Notice that the query results are stored in the table of the DataSet.
      foreach (DataRow row in ResultSet.Tables[0].Rows)
      {
      
        // Create the new node.
        TreeNode NewNode = new TreeNode(row["ProductName"].ToString());
        
        // Set the PopulateOnDemand property to false, because these are leaf nodes and
        // do not need to be populated.
        NewNode.PopulateOnDemand = false;
        
        // Set additional properties for the node.
        NewNode.SelectAction = TreeNodeSelectAction.None;
        
        // Add the new node to the ChildNodes collection of the parent node.
        node.ChildNodes.Add(NewNode);
        
      }
      
    }

  }

  DataSet RunQuery(String QueryString)
  {

    // Declare the connection string. This example uses Microsoft SQL Server 
    // and connects to the Northwind sample database.
    String ConnectionString = "server=localhost;database=NorthWind;Integrated Security=SSPI"; 

    SqlConnection DBConnection = new SqlConnection(ConnectionString);
    SqlDataAdapter DBAdapter;
    DataSet ResultsDataSet = new DataSet();

    try
    {

      // Run the query and create a DataSet.
      DBAdapter = new SqlDataAdapter(QueryString, DBConnection);
      DBAdapter.Fill(ResultsDataSet);

      // Close the database connection.
      DBConnection.Close();

    }
    catch(Exception ex)
    {

      // Close the database connection if it is still open.
      if(DBConnection.State == ConnectionState.Open)
      {
        DBConnection.Close();
      }
      
      Message.Text = "Unable to connect to the database.";

    }

    return ResultsDataSet;

  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>TreeView PopulateNodesFromClient Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeView PopulateNodesFromClient Example</h3>
    
      <asp:TreeView id="LinksTreeView"
        Font-Names= "Arial"
        ForeColor="Blue"
        EnableClientScript="true"
        PopulateNodesFromClient="true"  
        OnTreeNodePopulate="PopulateNode"
        runat="server">
         
        <Nodes>
        
          <asp:TreeNode Text="Inventory" 
            SelectAction="Expand"  
            PopulateOnDemand="true"/>
        
        </Nodes>
        
      </asp:TreeView>
      
      <br /><br />
      
      <asp:Label id="Message" runat="server"/>

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

<%@ Page Language="VB" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>

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

  Sub PopulateNode(ByVal sender As Object, ByVal e As TreeNodeEventArgs)

    ' Call the appropriate method to populate a node at a particular level.
    Select Case e.Node.Depth

      Case 0
        ' Populate the first-level nodes.
        PopulateCategories(e.Node)

      Case 1
        ' Populate the second-level nodes.
        PopulateProducts(e.Node)

      Case Else
        ' Do nothing.

    End Select

  End Sub

  Sub PopulateCategories(ByVal node As TreeNode)

    ' Query for the product categories. These are the values
    ' for the second-level nodes.
    Dim ResultSet As DataSet = RunQuery("Select CategoryID, CategoryName From Categories")

    ' Create the second-level nodes.
    If ResultSet.Tables.Count > 0 Then

      ' Iterate through and create a new node for each row in the query results.
      ' Notice that the query results are stored in the table of the DataSet.
      Dim row As DataRow

      For Each row In ResultSet.Tables(0).Rows

        ' Create the new node. Notice that the CategoryId is stored in the Value property 
        ' of the node. This will make querying for items in a specific category easier when
        ' the third-level nodes are created. 
        Dim newNode As TreeNode = New TreeNode()
        Newnode.Text = row("CategoryName").ToString() 
        Newnode.Value = row("CategoryID").ToString()

        ' Set the PopulateOnDemand property to true so that the child nodes can be 
        ' dynamically populated.
        newNode.PopulateOnDemand = True

        ' Set additional properties for the node.
        newNode.SelectAction = TreeNodeSelectAction.Expand

        ' Add the new node to the ChildNodes collection of the parent node.
        node.ChildNodes.Add(newNode)

      Next

    End If

  End Sub

  Sub PopulateProducts(ByVal node As TreeNode)

    ' Query for the products of the current category. These are the values
    ' for the third-level nodes.
    Dim ResultSet As DataSet = RunQuery("Select ProductName From Products Where CategoryID=" & node.Value)

    ' Create the third-level nodes.
    If ResultSet.Tables.Count > 0 Then

      ' Iterate through and create a new node for each row in the query results.
      ' Notice that the query results are stored in the table of the DataSet.
      Dim row As DataRow

      For Each row In ResultSet.Tables(0).Rows

        ' Create the new node.
        Dim NewNode As TreeNode = New TreeNode(row("ProductName").ToString())

        ' Set the PopulateOnDemand property to false, because these are leaf nodes and
        ' do not need to be populated.
        NewNode.PopulateOnDemand = False

        ' Set additional properties for the node.
        NewNode.SelectAction = TreeNodeSelectAction.None

        ' Add the new node to the ChildNodes collection of the parent node.
        node.ChildNodes.Add(NewNode)

      Next

    End If

  End Sub

  Function RunQuery(ByVal QueryString As String) As DataSet

    ' Declare the connection string. This example uses Microsoft SQL Server 
    ' and connects to the Northwind sample database.
    Dim ConnectionString As String = "server=localhost;database=NorthWind;Integrated Security=SSPI"

    Dim DBConnection As SqlConnection = New SqlConnection(ConnectionString)
    Dim DBAdapter As SqlDataAdapter
    Dim ResultsDataSet As DataSet = New DataSet

    Try

      ' Run the query and create a DataSet.
      DBAdapter = New SqlDataAdapter(QueryString, DBConnection)
      DBAdapter.Fill(ResultsDataSet)

      ' Close the database connection.
      DBConnection.Close()

    Catch ex As Exception

      ' Close the database connection if it is still open.
      If DBConnection.State = ConnectionState.Open Then

        DBConnection.Close()

      End If

      Message.Text = "Unable to connect to the database."

    End Try

    Return ResultsDataSet

  End Function

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>TreeView PopulateNodesFromClient Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeView PopulateNodesFromClient Example</h3>
    
      <asp:TreeView id="LinksTreeView"
        Font-Names= "Arial"
        ForeColor="Blue"
        EnableClientScript="true"
        PopulateNodesFromClient="true"  
        OnTreeNodePopulate="PopulateNode"
        runat="server">
         
        <Nodes>
        
          <asp:TreeNode Text="Inventory" 
            SelectAction="Expand"  
            PopulateOnDemand="true"/>
        
        </Nodes>
        
      </asp:TreeView>
      
      <br /><br />
      
      <asp:Label id="Message" runat="server"/>

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

Kommentarer

I det här avsnittet:

Introduction

Kontrollen TreeView används för att visa hierarkiska data, till exempel en innehållsförteckning eller filkatalog, i en trädstruktur och stöder följande funktioner:

  • Databindning som gör att noderna i kontrollen kan bindas till XML-, tabell- eller relationsdata.

  • Webbplatsnavigering via integrering med SiteMapDataSource kontrollen.

  • Nodtext som kan visas som oformaterad text eller hyperlänkar.

  • Programmatisk åtkomst till TreeView objektmodellen för att skapa träd, fylla i noder, ange egenskaper och så vidare dynamiskt.

  • Nodpopulation på klientsidan (i webbläsare som stöds).

  • Möjligheten att visa en kryssruta bredvid varje nod.

  • Anpassningsbart utseende via teman, användardefinierade bilder och formatmallar.

    Note

    Kontrollen TreeView är utformad för att endast användas i en UpdatePanel kontroll när EnableClientScript den är inställd på true. UpdatePanel kontroller används för att uppdatera valda regioner på en sida i stället för att uppdatera hela sidan med ett återanrop. Mer information finns i Översikt över UpdatePanel-kontroll och Partial-Page renderingsöversikt.

Nodes

Kontrollen TreeView består av noder. Varje post i trädet kallas för en nod och representeras av ett TreeNode objekt. Nodtyper definieras på följande sätt:

  • En nod som innehåller andra noder kallas för en överordnad nod.

  • Noden som finns i en annan nod kallas för en underordnad nod.

  • En nod som inte har några underordnade kallas för en lövnod.

  • Den nod som inte finns i någon annan nod, men som är överordnade till alla andra noder, är rotnoden.

En nod kan vara både överordnad och underordnad, men rot-, över- och lövnoder är ömsesidigt uteslutande. Flera visuella egenskaper och beteendeegenskaper för noder bestäms av om en nod är en rot-, under- eller lövnod.

Även om en typisk trädstruktur bara har en rotnod kan TreeView du med kontrollen lägga till flera rotnoder i trädstrukturen. Detta är användbart när du vill visa objektlistor utan att visa en enda rotnod, som i en lista över produktkategorier.

Varje nod har en Text egenskap och en Value egenskap. Värdet för Text egenskapen visas i TreeView, medan Value egenskapen används för att lagra ytterligare data om noden, till exempel data som skickas till postback-händelsen som är associerad med noden.

En nod kan vara i något av två lägen: markeringsläge och navigeringsläge. Som standard är en nod i markeringsläge. Om du vill placera en nod i navigeringsläge anger du NavigateUrl egenskapen för noden till ett annat värde än en tom sträng (""). Om du vill placera en nod i markeringsläge anger du NavigateUrl egenskapen för noden till en tom sträng ("").

Note

Vissa webbläsare har en begränsning som kan påverka kontrollens TreeView prestanda. Till exempel har Microsoft Internet Explorer 6.0 en URL-teckengräns på 2 067 tecken som den publicerar. Om antalet tecken i en URL för en nod är större än det talet, kommer det inte att gå att expandera noden och inget undantag genereras.

Statiska data

Den enklaste datamodellen för TreeView kontrollen är statiska data. Om du vill visa statiska data med deklarativ syntax måste du först kapsla inledande och avslutande <Nodes> taggar mellan kontrollens TreeView inledande och avslutande taggar. Skapa sedan trädstrukturen genom att kapsla <asp:TreeNode> element mellan inledande och avslutande <Nodes> taggar. Varje <asp:TreeNode> element representerar en nod i trädet och mappar till ett TreeNode objekt. Du kan ange egenskaperna för varje nod genom att ange attributen för dess <asp:TreeNode> element. Skapa underordnade noder genom att kapsla ytterligare <asp:TreeNode> element mellan de inledande och avslutande <asp:TreeNode> taggarna för den överordnade noden.

Bindning till data

Kontrollen TreeView kan också bindas till data. Du kan använda någon av två metoder för att binda TreeView kontrollen till rätt typ av datakälla:

  • Kontrollen TreeView kan använda valfri datakällakontroll som implementerar IHierarchicalDataSource gränssnittet, till exempel en XmlDataSource kontroll eller en SiteMapDataSource kontroll. Om du vill binda till en datakällakontroll anger du DataSourceID kontrollens TreeView egenskap till ID värdet för datakällans kontroll. Kontrollen TreeView binder automatiskt till den angivna datakällans kontroll. Det här är den bästa metoden för att binda till data.

  • Kontrollen TreeView kan också bindas till ett XmlDocument objekt eller ett DataSet objekt med relationer. Om du vill binda till en av dessa datakällor anger du DataSource kontrollens TreeView egenskap till datakällan och anropar DataBind sedan metoden.

När du binder till en datakälla där varje dataobjekt innehåller flera egenskaper (till exempel ett XML-element med flera attribut) visar en nod det värde som returneras av ToString dataobjektets metod som standard. När det gäller ett XML-element visar noden elementnamnet, som visar trädets underliggande struktur men inte är särskilt användbart annars. Du kan binda en nod till en specifik dataobjektegenskap genom att ange trädnodbindningar med hjälp av DataBindings samlingen. Samlingen DataBindings innehåller TreeNodeBinding objekt som definierar relationen mellan ett dataobjekt och den nod som den är bindning till. Du kan ange villkor för bindning och den dataobjektegenskap som ska visas i noden. Mer information om trädnodbindningar finns i TreeNodeBinding.

Important

En obehörig användare kan skapa en begäran om motringning och hämta data för noderna i kontrollen TreeView som sidutvecklaren inte visar. Därför måste datasäkerheten implementeras av datakällan. Använd inte egenskapen MaxDataBindDepth för att dölja data.

Dynamisk nodpopulation

Ibland är det inte praktiskt att statiskt definiera trädstrukturen eftersom datakällan returnerar för mycket data eller för att data som ska visas beror på information som du får vid körning. På grund av detta TreeView stöder kontrollen dynamisk nodpopulation. När egenskapen PopulateOnDemand för en nod är inställd truepå fylls noden i vid körning när noden expanderas. Om du vill fylla i en nod dynamiskt måste du definiera en händelsehanteringsmetod som innehåller logiken för att fylla i en nod för TreeNodePopulate händelsen.

Webbläsare som stöder motringningsskript kan också dra nytta av nodpopulationen på klientsidan. (Detta inkluderar Internet Explorer 5.5 och senare och några andra webbläsare.) Med nodpopulationen på klientsidan kan TreeView-kontrollen fylla i en nod med hjälp av klientskriptet när användarna expanderar noden, utan att kräva en tur och retur till servern. Mer information om nodpopulationen på klientsidan finns i PopulateNodesFromClient.

Anpassa användargränssnittet

Det finns många sätt att anpassa kontrollens TreeView utseende. Först kan du ange ett annat format (till exempel teckenstorlek och färg) för var och en av nodtyperna.

Om du använder sammanhängande formatmallar (CSS) för att anpassa kontrollens utseende använder du antingen infogade format eller en separat CSS-fil, men inte båda. Att använda både infogade format och en separat CSS-fil kan orsaka oväntade resultat. Mer information om hur du använder formatmallar med kontroller finns i Webbserverkontroller och CSS-format.

I följande tabell visas tillgängliga nodformat.

Nodformategenskap Description
HoverNodeStyle Formatinställningarna för en nod när muspekaren placeras över den.
LeafNodeStyle Formatinställningarna för lövnoderna.
NodeStyle Standardformatinställningarna för en nod.
ParentNodeStyle Formatinställningarna för de överordnade noderna.
RootNodeStyle Formatinställningarna för rotnoden.
SelectedNodeStyle Formatinställningarna för en vald nod.

Du kan också styra nodformatet på specifika djup i trädet med hjälp LevelStyles av samlingen. Det första formatet i samlingen motsvarar nodernas format på den första nivån i trädet. Det andra formatet i samlingen motsvarar nodernas format på den andra nivån i trädet och så vidare. Detta används oftast för att generera en innehållsförteckning med navigeringsmenyer där noder på ett visst djup ska ha samma utseende, oavsett om de har underordnade noder.

Note

Om ett format har definierats för en viss djupnivå med hjälp av LevelStyles samlingen åsidosätter formatet alla inställningar för rot-, överordnad- eller lövnodstil för noderna på det djupet.

Ett annat sätt att ändra kontrollens utseende är att anpassa de bilder som visas i TreeView kontrollen. Du kan ange en egen anpassad uppsättning bilder för de olika delarna av kontrollen genom att ange egenskaperna som visas i följande tabell.

Bildegenskap Description
CollapseImageUrl URL:en till en bild som visas för den komprimerbara nodindikatorn. Den här bilden är vanligtvis ett minustecken (-).
ExpandImageUrl URL:en till en bild som visas för den utökningsbara nodindikatorn. Den här bilden är vanligtvis ett plustecken (+).
LineImagesFolder URL:en till mappen som innehåller de radbilder som används för att ansluta överordnade noder till underordnade noder. Egenskapen ShowLines måste också anges till true för att den här egenskapen ska ha en effekt.
NoExpandImageUrl URL:en till en bild som visas för nodindikatorn som inte kan expanderas.

Note

Du behöver inte anpassa varje bildegenskap. Om en avbildningsegenskap inte uttryckligen anges används den inbyggda standardbilden.

Med TreeView kontrollen kan du också visa en kryssruta bredvid en nod. När egenskapen ShowCheckBoxes är inställd på ett annat värde än TreeNodeTypes.Nonevisas kryssrutor bredvid de angivna nodtyperna.

Note

Egenskapen ShowCheckBoxes kan anges till en bitvis kombination av TreeNodeTypes uppräkningsmedlemsvärdena.

Varje gång sidan publiceras på servern CheckedNodes fylls samlingen automatiskt i med de valda noderna. När kryssrutor visas kan du använda TreeNodeCheckChanged händelsen för att köra en anpassad rutin när statusen för en kryssruta ändras mellan inlägg på servern.

Händelser

Kontrollen TreeView innehåller flera händelser som du kan programmera mot. På så sätt kan du köra en anpassad rutin när en händelse inträffar. I följande tabell visas de händelser som stöds av TreeView kontrollen.

Händelse Description
TreeNodeCheckChanged Inträffar när kryssrutorna i kontrolländringstillståndet TreeView mellan inlägg på servern.
SelectedNodeChanged Inträffar när en nod väljs TreeView i kontrollen.
TreeNodeExpanded Inträffar när en nod expanderas i TreeView kontrollen.
TreeNodeCollapsed Inträffar när en nod komprimeras i TreeView kontrollen.
TreeNodePopulate Inträffar när en nod med dess PopulateOnDemand egenskap inställd true på expanderas i TreeView kontrollen.
TreeNodeDataBound Inträffar när ett dataobjekt är bundet till en nod i TreeView kontrollen.

Rullning

Kontrollen TreeView har inte inbyggd rullning. Om du vill lägga till rullning placerar du TreeView kontrollen i en Panel kontroll och lägger till rullningslister i Panel kontrollen. Mer information finns i Översikt över webbserverkontroll på panelen.

Tillgänglighet

Pålägget som återges som standard för den här kontrollen kanske inte överensstämmer med tillgänglighetsstandarderna. Mer information om hjälpmedelsstöd för den här kontrollen finns i ASP.NET Controls and Accessibility.

Deklarativ syntax

<asp:TreeView
    AccessKey="string"
    AutoGenerateDataBindings="True|False"
    BackColor="color name|#dddddd"
    BorderColor="color name|#dddddd"
    BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|Ridge|
        Inset|Outset"
    BorderWidth="size"
    CollapseImageToolTip="string"
    CollapseImageUrl="uri"
    CssClass="string"
    DataSource="string"
    DataSourceID="string"
    EnableClientScript="True|False"
    Enabled="True|False"
    EnableTheming="True|False"
    EnableViewState="True|False"
    ExpandDepth="string|FullyExpand|0|1|2|3|4|5|6|7|8|9|10|11|12|13|
        14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30"
    ExpandImageToolTip="string"
    ExpandImageUrl="uri"
    Font-Bold="True|False"
    Font-Italic="True|False"
    Font-Names="string"
    Font-Overline="True|False"
    Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|
       Large|X-Large|XX-Large"
    Font-Strikeout="True|False"
    Font-Underline="True|False"
    ForeColor="color name|#dddddd"
    Height="size"
    ID="string"
    ImageSet="Custom|XPFileExplorer|Msdn|WindowsHelp|Simple|Simple2|
        BulletedList|BulletedList2|BulletedList3|BulletedList4|
        Arrows|News|Contacts|Inbox|Events|Faq"
    LineImagesFolder="string"
    MaxDataBindDepth="integer"
    NodeIndent="integer"
    NodeWrap="True|False"
    NoExpandImageUrl="uri"
    OnDataBinding="DataBinding event handler"
    OnDataBound="DataBound event handler"
    OnDisposed="Disposed event handler"
    OnInit="Init event handler"
    OnLoad="Load event handler"
    OnPreRender="PreRender event handler"
    OnSelectedNodeChanged="SelectedNodeChanged event handler"
    OnTreeNodeCheckChanged="TreeNodeCheckChanged event handler"
    OnTreeNodeCollapsed="TreeNodeCollapsed event handler"
    OnTreeNodeDataBound="TreeNodeDataBound event handler"
    OnTreeNodeExpanded="TreeNodeExpanded event handler"
    OnTreeNodePopulate="TreeNodePopulate event handler"
    OnUnload="Unload event handler"
    PathSeparator="string"
    PopulateNodesFromClient="True|False"
    runat="server"
    ShowCheckBoxes="None|Root|Parent|Leaf|All"
    ShowExpandCollapse="True|False"
    ShowLines="True|False"
    SkinID="string"
    SkipLinkText="string"
    Style="string"
    TabIndex="integer"
    Target="string"
    ToolTip="string"
    Visible="True|False"
    Width="size"
>
        <DataBindings>
                <asp:TreeNodeBinding
                    DataMember="string"
                    Depth="integer"
                    FormatString="string"
                    ImageToolTip="string"
                    ImageToolTipField="string"
                    ImageUrl="uri"
                    ImageUrlField="string"
                    NavigateUrl="uri"
                    NavigateUrlField="string"
                    PopulateOnDemand="True|False"
                    SelectAction="Select|Expand|SelectExpand|None"
                    ShowCheckBox="string"
                    Target="string"
                    TargetField="string"
                    Text="string"
                    TextField="string"
                    ToolTip="string"
                    ToolTipField="string"
                    Value="string"
                    ValueField="string"
                />
        </DataBindings>
        <HoverNodeStyle />
        <LeafNodeStyle
            BackColor="color name|#dddddd"
            BorderColor="color name|#dddddd"
            BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|
                Groove|Ridge|Inset|Outset"
            BorderWidth="size"
            ChildNodesPadding="size"
            CssClass="string"
            Font-Bold="True|False"
            Font-Italic="True|False"
            Font-Names="string"
            Font-Overline="True|False"
            Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|
                Medium|Large|X-Large|XX-Large"
            Font-Strikeout="True|False"
            Font-Underline="True|False"
            ForeColor="color name|#dddddd"
            Height="size"
            HorizontalPadding="size"
            ImageUrl="uri"
            NodeSpacing="size"
            OnDisposed="Disposed event handler"
            VerticalPadding="size"
            Width="size"
        />
        <LevelStyles>
                <asp:TreeNodeStyle
                    BackColor="color name|#dddddd"
                    BorderColor="color name|#dddddd"
                    BorderStyle="NotSet|None|Dotted|Dashed|Solid|
                        Double|Groove|Ridge|Inset|Outset"
                    BorderWidth="size"
                    ChildNodesPadding="size"
                    CssClass="string"
                    Font-Bold="True|False"
                    Font-Italic="True|False"
                    Font-Names="string"
                    Font-Overline="True|False"
                    Font-Size="string|Smaller|Larger|XX-Small|
                        X-Small|Small|Medium|Large|X-Large|XX-Large"
                    Font-Strikeout="True|False"
                    Font-Underline="True|False"
                    ForeColor="color name|#dddddd"
                    Height="size"
                    HorizontalPadding="size"
                    ImageUrl="uri"
                    NodeSpacing="size"
                    OnDisposed="Disposed event handler"
                    VerticalPadding="size"
                    Width="size"
                />
        </LevelStyles>
        <Nodes>
                <asp:TreeNode
                    Checked="True|False"
                    Expanded="string"
                    ImageToolTip="string"
                    ImageUrl="uri"
                    NavigateUrl="uri"
                    PopulateOnDemand="True|False"
                    SelectAction="Select|Expand|SelectExpand|None"
                    Selected="True|False"
                    ShowCheckBox="string"
                    Target="string"
                    Text="string"
                    ToolTip="string"
                    Value="string"
>
                </asp:TreeNode>
        </Nodes>
        <NodeStyle
            BackColor="color name|#dddddd"
            BorderColor="color name|#dddddd"
            BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|
                Groove|Ridge|Inset|Outset"
            BorderWidth="size"
            ChildNodesPadding="size"
            CssClass="string"
            Font-Bold="True|False"
            Font-Italic="True|False"
            Font-Names="string"
            Font-Overline="True|False"
            Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|
                Medium|Large|X-Large|XX-Large"
            Font-Strikeout="True|False"
            Font-Underline="True|False"
            ForeColor="color name|#dddddd"
            Height="size"
            HorizontalPadding="size"
            ImageUrl="uri"
            NodeSpacing="size"
            OnDisposed="Disposed event handler"
            VerticalPadding="size"
            Width="size"
        />
        <ParentNodeStyle
            BackColor="color name|#dddddd"
            BorderColor="color name|#dddddd"
            BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|
                Groove|Ridge|Inset|Outset"
            BorderWidth="size"
            ChildNodesPadding="size"
            CssClass="string"
            Font-Bold="True|False"
            Font-Italic="True|False"
            Font-Names="string"
            Font-Overline="True|False"
            Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|
                Medium|Large|X-Large|XX-Large"
            Font-Strikeout="True|False"
            Font-Underline="True|False"
            ForeColor="color name|#dddddd"
            Height="size"
            HorizontalPadding="size"
            ImageUrl="uri"
            NodeSpacing="size"
            OnDisposed="Disposed event handler"
            VerticalPadding="size"
            Width="size"
        />
        <RootNodeStyle
            BackColor="color name|#dddddd"
            BorderColor="color name|#dddddd"
            BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|
                Groove|Ridge|Inset|Outset"
            BorderWidth="size"
            ChildNodesPadding="size"
            CssClass="string"
            Font-Bold="True|False"
            Font-Italic="True|False"
            Font-Names="string"
            Font-Overline="True|False"
            Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|
                Medium|Large|X-Large|XX-Large"
            Font-Strikeout="True|False"
            Font-Underline="True|False"
            ForeColor="color name|#dddddd"
            Height="size"
            HorizontalPadding="size"
            ImageUrl="uri"
            NodeSpacing="size"
            OnDisposed="Disposed event handler"
            VerticalPadding="size"
            Width="size"
        />
        <SelectedNodeStyle
            BackColor="color name|#dddddd"
            BorderColor="color name|#dddddd"
            BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|
                Groove|Ridge|Inset|Outset"
            BorderWidth="size"
            ChildNodesPadding="size"
            CssClass="string"
            Font-Bold="True|False"
            Font-Italic="True|False"
            Font-Names="string"
            Font-Overline="True|False"
            Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|
                Medium|Large|X-Large|XX-Large"
            Font-Strikeout="True|False"
            Font-Underline="True|False"
            ForeColor="color name|#dddddd"
            Height="size"
            HorizontalPadding="size"
            ImageUrl="uri"
            NodeSpacing="size"
            OnDisposed="Disposed event handler"
            VerticalPadding="size"
            Width="size"
        />
</asp:TreeView>

Konstruktorer

Name Description
TreeView()

Initierar en ny instans av TreeView klassen.

Egenskaper

Name Description
AccessKey

Hämtar eller anger åtkomstnyckeln som gör att du snabbt kan navigera till webbserverkontrollen.

(Ärvd från WebControl)
Adapter

Hämtar det webbläsarspecifika adaptern för kontrollen.

(Ärvd från Control)
AppRelativeTemplateSourceDirectory

Hämtar eller anger den programrelativa virtuella katalogen PageUserControl för eller -objektet som innehåller den här kontrollen.

(Ärvd från Control)
Attributes

Hämtar samlingen med godtyckliga attribut (endast för återgivning) som inte motsvarar egenskaperna i kontrollen.

(Ärvd från WebControl)
AutoGenerateDataBindings

Hämtar eller anger ett värde som anger om TreeView kontrollen automatiskt genererar trädnodbindningar.

BackColor

Hämtar eller anger bakgrundsfärgen för webbserverkontrollen.

(Ärvd från WebControl)
BindingContainer

Hämtar kontrollen som innehåller den här kontrollens databindning.

(Ärvd från Control)
BorderColor

Hämtar eller anger kantlinjefärgen för webbkontrollen.

(Ärvd från WebControl)
BorderStyle

Hämtar eller anger kantlinjeformatet för webbserverkontrollen.

(Ärvd från WebControl)
BorderWidth

Hämtar eller anger kantlinjebredden för webbserverkontrollen.

(Ärvd från WebControl)
CheckedNodes

Hämtar en samling TreeNode objekt som representerar noderna i kontrollen TreeView som visar en markerad kryssruta.

ChildControlsCreated

Hämtar ett värde som anger om serverkontrollens underordnade kontroller har skapats.

(Ärvd från Control)
ClientID

Hämtar kontroll-ID:t för HTML-kod som genereras av ASP.NET.

(Ärvd från Control)
ClientIDMode

Hämtar eller anger den algoritm som används för att generera värdet för ClientID egenskapen.

(Ärvd från Control)
ClientIDSeparator

Hämtar ett teckenvärde som representerar det avgränsartecken som används i egenskapen ClientID .

(Ärvd från Control)
CollapseImageToolTip

Hämtar eller anger knappbeskrivning för den bild som visas för den komprimerbara nodindikatorn.

CollapseImageUrl

Hämtar eller anger URL:en till en anpassad avbildning för den komprimerbara nodindikatorn.

Context

Hämtar objektet HttpContext som är associerat med serverkontrollen för den aktuella webbbegäran.

(Ärvd från Control)
Controls

Hämtar ett ControlCollection objekt som representerar de underordnade kontrollerna för en angiven serverkontroll i användargränssnittshierarkin.

(Ärvd från Control)
ControlStyle

Hämtar formatmallen för webbserverkontrollen. Den här egenskapen används främst av kontrollutvecklare.

(Ärvd från WebControl)
ControlStyleCreated

Hämtar ett värde som anger om ett Style objekt har skapats för egenskapen ControlStyle . Den här egenskapen används främst av kontrollutvecklare.

(Ärvd från WebControl)
CssClass

Hämtar eller anger css-klassen (Cascading Style Sheet) som återges av webbserverkontrollen på klienten.

(Ärvd från WebControl)
DataBindings

Hämtar en samling TreeNodeBinding objekt som definierar relationen mellan ett dataobjekt och den nod som det är bindning till.

DataItemContainer

Hämtar en referens till namngivningscontainern om namngivningscontainern implementerar IDataItemContainer.

(Ärvd från Control)
DataKeysContainer

Hämtar en referens till namngivningscontainern om namngivningscontainern implementerar IDataKeysControl.

(Ärvd från Control)
DataSource

Hämtar eller anger det objekt från vilket den databundna kontrollen hämtar sin lista över dataobjekt.

(Ärvd från BaseDataBoundControl)
DataSourceID

Hämtar eller anger ID för den kontroll som den databundna kontrollen hämtar sin lista över dataobjekt från.

(Ärvd från HierarchicalDataBoundControl)
DesignMode

Hämtar ett värde som anger om en kontroll används på en designyta.

(Ärvd från Control)
EnableClientScript

Hämtar eller anger ett värde som anger om TreeView kontrollen renderar skript på klientsidan för att hantera expanderande och komprimerande händelser.

Enabled

Hämtar eller anger ett värde som anger om webbserverkontrollen är aktiverad.

(Ärvd från WebControl)
EnableTheming

Hämtar eller anger ett värde som anger om teman ska gälla för den här kontrollen.

(Ärvd från WebControl)
EnableViewState

Hämtar eller anger ett värde som anger om serverkontrollen bevarar sitt visningstillstånd och visningstillståndet för eventuella underordnade kontroller som den innehåller till den begärande klienten.

(Ärvd från Control)
Events

Hämtar en lista över händelsehanterardelegater för kontrollen. Den här egenskapen är skrivskyddad.

(Ärvd från Control)
ExpandDepth

Hämtar eller anger antalet nivåer som expanderas när en TreeView kontroll visas för första gången.

ExpandImageToolTip

Hämtar eller anger knappbeskrivning för den bild som visas för den utökningsbara nodindikatorn.

ExpandImageUrl

Hämtar eller anger URL:en till en anpassad avbildning för indikatorn för utökningsbar nod.

Font

Hämtar teckensnittsegenskaperna som är associerade med webbserverkontrollen.

(Ärvd från WebControl)
ForeColor

Hämtar eller anger förgrundsfärgen (vanligtvis textens färg) för webbserverkontrollen.

(Ärvd från WebControl)
HasAttributes

Hämtar ett värde som anger om kontrollen har attribut inställda.

(Ärvd från WebControl)
HasChildViewState

Hämtar ett värde som anger om den aktuella serverkontrollens underordnade kontroller har några sparade vytillståndsinställningar.

(Ärvd från Control)
Height

Hämtar eller anger höjden på webbserverkontrollen.

(Ärvd från WebControl)
HoverNodeStyle

Hämtar en referens till objektet TreeNodeStyle som gör att du kan ange utseendet på en nod när muspekaren placeras över den.

ID

Hämtar eller anger den programmatiska identifierare som tilldelats serverkontrollen.

(Ärvd från Control)
IdSeparator

Hämtar det tecken som används för att separera kontrollidentifierare.

(Ärvd från Control)
ImageSet

Hämtar eller anger vilken grupp av bilder som ska användas för TreeView kontrollen.

Initialized

Hämtar ett värde som anger om den databundna kontrollen har initierats.

(Ärvd från BaseDataBoundControl)
IsBoundUsingDataSourceID

Hämtar ett värde som anger om egenskapen DataSourceID har angetts.

(Ärvd från BaseDataBoundControl)
IsChildControlStateCleared

Hämtar ett värde som anger om kontroller i den här kontrollen har kontrolltillstånd.

(Ärvd från Control)
IsDataBindingAutomatic

Hämtar ett värde som anger om databindningen är automatisk.

(Ärvd från BaseDataBoundControl)
IsEnabled

Hämtar ett värde som anger om kontrollen är aktiverad.

(Ärvd från WebControl)
IsTrackingViewState

Hämtar ett värde som anger om serverkontrollen sparar ändringar i visningstillståndet.

(Ärvd från Control)
IsUsingModelBinders

När det implementeras i en härledd klass får du ett värde som anger om kontrollen använder modellbindare.

(Ärvd från BaseDataBoundControl)
IsViewStateEnabled

Hämtar ett värde som anger om visningstillstånd är aktiverat för den här kontrollen.

(Ärvd från Control)
LeafNodeStyle

Hämtar en referens till objektet TreeNodeStyle som gör att du kan ange utseendet på lövnoder.

LevelStyles

Hämtar en samling Style objekt som representerar nodformaten på de enskilda nivåerna i trädet.

LineImagesFolder

Hämtar eller anger sökvägen till en mapp som innehåller radbilderna som används för att ansluta underordnade noder till överordnade noder.

LoadViewStateByID

Hämtar ett värde som anger om kontrollen deltar i inläsningen av dess visningstillstånd i ID stället för index.

(Ärvd från Control)
MaxDataBindDepth

Hämtar eller anger det maximala antalet trädnivåer som ska bindas TreeView till kontrollen.

NamingContainer

Hämtar en referens till serverkontrollens namngivningscontainer, vilket skapar ett unikt namnområde för differentiering mellan serverkontroller med samma ID egenskapsvärde.

(Ärvd från Control)
NodeIndent

Hämtar eller anger indragsmängden (i bildpunkter) för kontrollens underordnade noder TreeView .

Nodes

Hämtar en samling TreeNode objekt som representerar rotnoderna i TreeView kontrollen.

NodeStyle

Hämtar en referens till objektet TreeNodeStyle som gör att du kan ange standardutseendet för noderna i TreeView kontrollen.

NodeWrap

Hämtar eller anger ett värde som anger om texten radbryts i en nod när noden får slut på utrymme.

NoExpandImageUrl

Hämtar eller anger URL:en till en anpassad avbildning för nodindikatorn som inte kan expanderas.

Page

Hämtar en referens till den Page instans som innehåller serverkontrollen.

(Ärvd från Control)
Parent

Hämtar en referens till serverkontrollens överordnade kontroll i sidkontrollhierarkin.

(Ärvd från Control)
ParentNodeStyle

Hämtar en referens till objektet TreeNodeStyle som gör att du kan ange utseendet på överordnade noder i TreeView kontrollen.

PathSeparator

Hämtar eller anger det tecken som används för att avgränsa de nodvärden som anges av ValuePath egenskapen.

PopulateNodesFromClient

Hämtar eller anger ett värde som anger om noddata fylls i på begäran från klienten.

RenderingCompatibility

Hämtar ett värde som anger den ASP.NET version som renderad HTML kommer att vara kompatibel med.

(Ärvd från Control)
RequiresDataBinding

Hämtar eller anger ett värde som anger om DataBind() metoden ska anropas.

(Ärvd från BaseDataBoundControl)
RootNodeStyle

Hämtar en referens till objektet TreeNodeStyle som gör att du kan ange utseendet på rotnoden TreeView i kontrollen.

SelectedNode

Hämtar ett TreeNode objekt som representerar den valda noden i TreeView kontrollen.

SelectedNodeStyle

Hämtar objektet TreeNodeStyle som styr utseendet på den valda noden i TreeView kontrollen.

SelectedValue

Hämtar värdet för den valda noden.

ShowCheckBoxes

Hämtar eller anger ett värde som anger vilka nodtyper som ska visa en kryssruta i TreeView kontrollen.

ShowExpandCollapse

Hämtar eller anger ett värde som anger om indikatorer för expansionsnoder visas.

ShowLines

Hämtar eller anger ett värde som anger om linjer som ansluter underordnade noder till överordnade noder visas.

Site

Hämtar information om containern som är värd för den aktuella kontrollen när den återges på en designyta.

(Ärvd från Control)
SkinID

Hämtar eller ställer in huden för att applicera på kontrollen.

(Ärvd från WebControl)
SkipLinkText

Hämtar eller anger ett värde som används för att återge alternativ text för skärmläsare för att hoppa över innehållet för kontrollen.

Style

Hämtar en samling textattribut som återges som ett formatattribut på den yttre taggen för webbserverkontrollen.

(Ärvd från WebControl)
SupportsDisabledAttribute

Hämtar ett värde som anger om kontrollen ska ange disabled attributet för det renderade HTML-elementet till "inaktiverat" när kontrollens IsEnabled egenskap är false.

(Ärvd från BaseDataBoundControl)
TabIndex

Hämtar eller anger flikindexet för webbserverkontrollen.

(Ärvd från WebControl)
TagKey

HtmlTextWriterTag Hämtar värdet för TreeView kontrollen.

TagName

Hämtar namnet på kontrolltaggen. Den här egenskapen används främst av kontrollutvecklare.

(Ärvd från WebControl)
Target

Hämtar eller anger målfönstret eller ramen där webbsidans innehåll som är associerat med en nod ska visas.

TemplateControl

Hämtar eller anger en referens till mallen som innehåller den här kontrollen.

(Ärvd från Control)
TemplateSourceDirectory

Hämtar den virtuella katalogen för Page eller UserControl som innehåller den aktuella serverkontrollen.

(Ärvd från Control)
ToolTip

Hämtar eller anger texten som visas när muspekaren hovrar över webbserverkontrollen.

(Ärvd från WebControl)
UniqueID

Hämtar den unika, hierarkiskt kvalificerade identifieraren för serverkontrollen.

(Ärvd från Control)
ValidateRequestMode

Hämtar eller anger ett värde som anger om kontrollen kontrollerar klientindata från webbläsaren efter potentiellt farliga värden.

(Ärvd från Control)
ViewState

Hämtar en ordlista med tillståndsinformation som gör att du kan spara och återställa visningstillståndet för en serverkontroll över flera begäranden för samma sida.

(Ärvd från Control)
ViewStateIgnoresCase

Hämtar ett värde som anger om objektet StateBag är skiftlägesokänsligt.

(Ärvd från Control)
ViewStateMode

Hämtar eller anger visningstillståndsläget för den här kontrollen.

(Ärvd från Control)
Visible

Hämtar eller anger ett värde som anger om kontrollen återges som användargränssnitt på sidan.

Width

Hämtar eller anger bredden på webbserverkontrollen.

(Ärvd från WebControl)

Metoder

Name Description
AddAttributesToRender(HtmlTextWriter)

Lägger till HTML-attribut och formatmallar som måste återges till den angivna HtmlTextWriter kontrollen.

AddedControl(Control, Int32)

Anropas efter att en underordnad kontroll har lagts till i ControlsControl objektets samling.

(Ärvd från Control)
AddParsedSubObject(Object)

Meddelar serverkontrollen att ett element, antingen XML eller HTML, parsades och lägger till elementet i serverkontrollens ControlCollection objekt.

(Ärvd från Control)
ApplyStyle(Style)

Kopierar alla icke-tomma element i det angivna formatet till webbkontrollen och skriver över alla befintliga formatelement i kontrollen. Den här metoden används främst av kontrollutvecklare.

(Ärvd från WebControl)
ApplyStyleSheetSkin(Page)

Tillämpar formategenskaperna som definierats i sidformatmallen på kontrollen.

(Ärvd från Control)
BeginRenderTracing(TextWriter, Object)

Påbörjar designtidsspårning av återgivningsdata.

(Ärvd från Control)
BuildProfileTree(String, Boolean)

Samlar in information om serverkontrollen och levererar den till egenskapen Trace som ska visas när spårning är aktiverat för sidan.

(Ärvd från Control)
ClearCachedClientID()

Anger det cachelagrade ClientID värdet till null.

(Ärvd från Control)
ClearChildControlState()

Tar bort kontrolltillståndsinformationen för serverkontrollens underordnade kontroller.

(Ärvd från Control)
ClearChildState()

Tar bort informationen om visningstillstånd och kontrolltillstånd för alla serverkontrollens underordnade kontroller.

(Ärvd från Control)
ClearChildViewState()

Tar bort visningstillståndsinformationen för alla serverkontrollens underordnade kontroller.

(Ärvd från Control)
ClearEffectiveClientIDMode()

Anger egenskapen för ClientIDMode den aktuella kontrollinstansen och för eventuella underordnade kontroller till Inherit.

(Ärvd från Control)
CollapseAll()

Stänger varje nod i trädet.

ConfirmInitState()

Anger det initierade tillståndet för den databundna kontrollen.

(Ärvd från BaseDataBoundControl)
CopyBaseAttributes(WebControl)

Kopierar egenskaperna som inte kapslas in av Style objektet från den angivna webbserverkontrollen till den webbserverkontroll som den här metoden anropas från. Den här metoden används främst av kontrollutvecklare.

(Ärvd från WebControl)
CreateChildControls()

Anropas av det ASP.NET sidramverket för att meddela serverkontroller som använder kompositionsbaserad implementering för att skapa underordnade kontroller som de innehåller som förberedelse för att publicera tillbaka eller återge.

(Ärvd från Control)
CreateControlCollection()

Skapar en samling för att lagra underordnade kontroller.

CreateControlStyle()

Skapar formatobjektet som används internt av WebControl klassen för att implementera alla formatrelaterade egenskaper. Den här metoden används främst av kontrollutvecklare.

(Ärvd från WebControl)
CreateNode()

Returnerar en ny instans av TreeNode klassen. CreateNode() är en hjälpmetod.

DataBind()

Anropar metoden för DataBind() basklassen.

DataBind(Boolean)

Binder en datakälla till den anropade serverkontrollen och alla dess underordnade kontroller med ett alternativ för att skapa händelsen DataBinding .

(Ärvd från Control)
DataBindChildren()

Binder en datakälla till serverkontrollens underordnade kontroller.

(Ärvd från Control)
Dispose()

Gör att en serverkontroll kan utföra slutlig rensning innan den frigörs från minnet.

(Ärvd från Control)
EndRenderTracing(TextWriter, Object)

Avslutar designtidsspårning av återgivningsdata.

(Ärvd från Control)
EnsureChildControls()

Avgör om serverkontrollen innehåller underordnade kontroller. Om den inte gör det skapar den underordnade kontroller.

(Ärvd från Control)
EnsureDataBound()

DataBind() Anropar metoden om DataSourceID egenskapen har angetts och den databundna kontrollen har markerats för att kräva bindning.

(Ärvd från BaseDataBoundControl)
EnsureID()

Skapar en identifierare för kontroller som inte har tilldelats någon identifierare.

(Ärvd från Control)
Equals(Object)

Avgör om det angivna objektet är lika med det aktuella objektet.

(Ärvd från Object)
ExpandAll()

Öppnar varje nod i trädet.

FindControl(String, Int32)

Söker i den aktuella namngivningscontainern efter en serverkontroll med det angivna id och ett heltal som anges i parametern pathOffset , vilket underlättar sökningen. Du bör inte åsidosätta den här versionen av FindControl metoden.

(Ärvd från Control)
FindControl(String)

Söker i den aktuella namngivningscontainern efter en serverkontroll med den angivna id parametern.

(Ärvd från Control)
FindNode(String)

Hämtar TreeNode objektet i TreeView kontrollen på den angivna värdesökvägen.

Focus()

Anger indatafokus till en kontroll.

(Ärvd från Control)
GetCallbackResult()

Returnerar resultatet av en motringningshändelse som riktar sig mot en kontroll.

GetData(String)

Hämtar ett HierarchicalDataSourceView objekt som den databundna kontrollen använder för att utföra dataåtgärder.

(Ärvd från HierarchicalDataBoundControl)
GetDataSource()

Hämtar den IHierarchicalDataSource databundna kontroll som är associerad med, om någon.

(Ärvd från HierarchicalDataBoundControl)
GetDesignModeState()

Hämtar designtidsdata för en kontroll.

(Ärvd från Control)
GetHashCode()

Fungerar som standard-hash-funktion.

(Ärvd från Object)
GetRouteUrl(Object)

Hämtar url:en som motsvarar en uppsättning routningsparametrar.

(Ärvd från Control)
GetRouteUrl(RouteValueDictionary)

Hämtar url:en som motsvarar en uppsättning routningsparametrar.

(Ärvd från Control)
GetRouteUrl(String, Object)

Hämtar url:en som motsvarar en uppsättning vägparametrar och ett vägnamn.

(Ärvd från Control)
GetRouteUrl(String, RouteValueDictionary)

Hämtar url:en som motsvarar en uppsättning vägparametrar och ett vägnamn.

(Ärvd från Control)
GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
GetUniqueIDRelativeTo(Control)

Returnerar den prefixade delen av UniqueID egenskapen för den angivna kontrollen.

(Ärvd från Control)
HasControls()

Avgör om serverkontrollen innehåller några underordnade kontroller.

(Ärvd från Control)
HasEvents()

Returnerar ett värde som anger om händelser har registrerats för kontrollen eller underordnade kontroller.

(Ärvd från Control)
IsLiteralContent()

Avgör om serverkontrollen endast innehåller literalinnehåll.

(Ärvd från Control)
LoadControlState(Object)

Återställer kontrolltillståndsinformation från en begäran från föregående sida som sparades av SaveControlState() metoden.

(Ärvd från Control)
LoadPostData(String, NameValueCollection)

Bearbetar postback-data för TreeView kontrollen.

LoadViewState(Object)

Läser in kontrollens tidigare sparade vytillstånd TreeView .

MapPathSecure(String)

Hämtar den fysiska sökväg som en virtuell sökväg, antingen absolut eller relativ, mappar till.

(Ärvd från Control)
MarkAsDataBound()

Anger tillståndet för kontrollen i visningstillståndet som korrekt bundet till data.

(Ärvd från HierarchicalDataBoundControl)
MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
MergeStyle(Style)

Kopierar alla icke-tomma element i det angivna formatet till webbkontrollen, men skriver inte över några befintliga formatelement i kontrollen. Den här metoden används främst av kontrollutvecklare.

(Ärvd från WebControl)
OnBubbleEvent(Object, EventArgs)

Avgör om händelsen för serverkontrollen skickas upp på sidans UI-serverkontrollhierarki.

(Ärvd från Control)
OnDataBinding(EventArgs)

Genererar händelsen DataBinding .

(Ärvd från Control)
OnDataBound(EventArgs)

Genererar händelsen DataBound .

(Ärvd från BaseDataBoundControl)
OnDataPropertyChanged()

Anropas när en av de grundläggande egenskaperna för datakällans identifiering ändras för att återbinda den databundna kontrollen till dess data.

(Ärvd från HierarchicalDataBoundControl)
OnDataSourceChanged(Object, EventArgs)

Anropas när den IHierarchicalDataSource instans som den databundna kontrollen fungerar med genererar DataSourceChanged händelsen.

(Ärvd från HierarchicalDataBoundControl)
OnInit(EventArgs)

Genererar händelsen Init .

OnLoad(EventArgs)

Hanterar händelsen Load .

(Ärvd från HierarchicalDataBoundControl)
OnPagePreLoad(Object, EventArgs)

Anger det initierade tillståndet för den databundna kontrollen innan kontrollen läses in.

(Ärvd från HierarchicalDataBoundControl)
OnPreRender(EventArgs)

Genererar händelsen PreRender .

OnSelectedNodeChanged(EventArgs)

Genererar SelectedNodeChanged kontrollens TreeView händelse.

OnTreeNodeCheckChanged(TreeNodeEventArgs)

Genererar TreeNodeCheckChanged kontrollens TreeView händelse.

OnTreeNodeCollapsed(TreeNodeEventArgs)

Genererar TreeNodeCollapsed kontrollens TreeView händelse.

OnTreeNodeDataBound(TreeNodeEventArgs)

Genererar TreeNodeDataBound kontrollens TreeView händelse.

OnTreeNodeExpanded(TreeNodeEventArgs)

Genererar TreeNodeExpanded kontrollens TreeView händelse.

OnTreeNodePopulate(TreeNodeEventArgs)

Genererar TreeNodePopulate kontrollens TreeView händelse.

OnUnload(EventArgs)

Genererar händelsen Unload .

(Ärvd från Control)
OpenFile(String)

Hämtar en Stream som används för att läsa en fil.

(Ärvd från Control)
PerformDataBinding()

Skapar alla noder baserat på datakällan.

PerformSelect()

Hämtar data från den associerade datakällan.

(Ärvd från HierarchicalDataBoundControl)
RaiseBubbleEvent(Object, EventArgs)

Tilldelar alla källor till händelsen och dess information till kontrollens överordnade.

(Ärvd från Control)
RaiseCallbackEvent(String)

Genererar motringningshändelsen med de angivna argumenten.

RaisePostBackEvent(String)

TreeView Gör att kontrollen kan bearbeta en händelse som genereras när ett formulär publiceras på servern. Metoden RaisePostBackEvent(String) är en hjälpmetod för ICallbackEventHandler.RaiseCallbackEvent(String) metoden.

RaisePostDataChangedEvent()

Signalerar kontrollen TreeView för att meddela ASP.NET-programmet att kontrollens tillstånd har ändrats.

RemovedControl(Control)

Anropas efter att en underordnad Controls kontroll har tagits bort från objektets Control samling.

(Ärvd från Control)
Render(HtmlTextWriter)

Renderar kontrollen till den angivna HTML-skrivaren.

(Ärvd från WebControl)
RenderBeginTag(HtmlTextWriter)

Renderar HTML-öppningstaggen för kontrollen till den angivna skrivaren.

RenderChildren(HtmlTextWriter)

Matar ut innehållet i en serverkontrolls underordnade objekt till ett angivet HtmlTextWriter objekt som skriver innehållet som ska återges på klienten.

(Ärvd från Control)
RenderContents(HtmlTextWriter)

Renderar noderna i TreeView kontrollen.

RenderControl(HtmlTextWriter, ControlAdapter)

Matar ut serverkontrollinnehåll till ett angivet HtmlTextWriter objekt med hjälp av ett angivet ControlAdapter objekt.

(Ärvd från Control)
RenderControl(HtmlTextWriter)

Matar ut serverkontrollinnehåll till ett angivet HtmlTextWriter objekt och lagrar spårningsinformation om kontrollen om spårning är aktiverat.

(Ärvd från Control)
RenderEndTag(HtmlTextWriter)

Renderar HTML-avslutande taggen för kontrollen till den angivna skrivaren.

ResolveAdapter()

Hämtar kontrollkortet som ansvarar för att återge den angivna kontrollen.

(Ärvd från Control)
ResolveClientUrl(String)

Hämtar en URL som kan användas av webbläsaren.

(Ärvd från Control)
ResolveUrl(String)

Konverterar en URL till en som kan användas på den begärande klienten.

(Ärvd från Control)
SaveControlState()

Sparar alla ändringar i serverkontrolltillståndet som har inträffat sedan sidan publicerades tillbaka till servern.

(Ärvd från Control)
SaveViewState()

Sparar kontrollens TreeView tillstånd.

SetDesignModeState(IDictionary)

Anger designtidsdata för en kontroll.

(Ärvd från Control)
SetNodeDataBound(TreeNode, Boolean)

Tillåter att en härledd klass anger om den angivna TreeNode kontrollen är databunden.

SetNodeDataItem(TreeNode, Object)

Tillåter att en härledd klass anger dataobjektet för den angivna TreeNode kontrollen.

SetNodeDataPath(TreeNode, String)

Tillåter att en härledd klass anger datasökvägen för den angivna TreeNode kontrollen.

SetRenderMethodDelegate(RenderMethod)

Tilldelar ett händelsehanterardelegat för att återge serverkontrollen och dess innehåll till den överordnade kontrollen.

(Ärvd från Control)
SetTraceData(Object, Object, Object)

Anger spårningsdata för designtidsspårning av återgivningsdata, med hjälp av det spårade objektet, spårningsdatanyckeln och värdet för spårningsdata.

(Ärvd från Control)
SetTraceData(Object, Object)

Anger spårningsdata för designtidsspårning av återgivningsdata med hjälp av spårningsdatanyckeln och värdet för spårningsdata.

(Ärvd från Control)
ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)
TrackViewState()

Spårar ändringar i visningstillståndet TreeView i kontrollen så att de kan lagras i StateBag -objektet för kontrollen. Detta StateBag är tillgängligt via egenskapen ViewState .

ValidateDataSource(Object)

Verifierar att objektet som en databunden kontroll binder till är ett objekt som det kan arbeta med.

(Ärvd från HierarchicalDataBoundControl)

Händelser

Name Description
DataBinding

Inträffar när serverkontrollen binder till en datakälla.

(Ärvd från Control)
DataBound

Inträffar när serverkontrollen binder till en datakälla.

(Ärvd från BaseDataBoundControl)
Disposed

Inträffar när en serverkontroll frigörs från minnet, vilket är den sista fasen i serverkontrolllivscykeln när en ASP.NET sida begärs.

(Ärvd från Control)
Init

Inträffar när serverkontrollen initieras, vilket är det första steget i dess livscykel.

(Ärvd från Control)
Load

Inträffar när serverkontrollen läses in i Page objektet.

(Ärvd från Control)
PreRender

Inträffar efter att objektet Control har lästs in men före återgivningen.

(Ärvd från Control)
SelectedNodeChanged

Inträffar när en nod väljs TreeView i kontrollen.

TreeNodeCheckChanged

Inträffar när en kryssruta i TreeView kontrollen ändrar tillstånd mellan inlägg på servern.

TreeNodeCollapsed

Inträffar när en nod komprimeras i TreeView kontrollen.

TreeNodeDataBound

Inträffar när ett dataobjekt är bundet till en nod i TreeView kontrollen.

TreeNodeExpanded

Inträffar när en nod expanderas i TreeView kontrollen.

TreeNodePopulate

Inträffar när en nod med dess PopulateOnDemand egenskap inställd true på expanderas i TreeView kontrollen.

Unload

Inträffar när serverkontrollen tas bort från minnet.

(Ärvd från Control)

Explicita gränssnittsimplementeringar

Name Description
IAttributeAccessor.GetAttribute(String)

Hämtar ett attribut för webbkontrollen med det angivna namnet.

(Ärvd från WebControl)
IAttributeAccessor.SetAttribute(String, String)

Anger ett attribut för webbkontrollen till det angivna namnet och värdet.

(Ärvd från WebControl)
ICallbackEventHandler.GetCallbackResult()

Returnerar resultatet av en motringningshändelse som riktar sig mot en kontroll.

ICallbackEventHandler.RaiseCallbackEvent(String)

Genererar motringningshändelsen med de angivna argumenten.

IControlBuilderAccessor.ControlBuilder

En beskrivning av den här medlemmen finns i ControlBuilder.

(Ärvd från Control)
IControlDesignerAccessor.GetDesignModeState()

En beskrivning av den här medlemmen finns i GetDesignModeState().

(Ärvd från Control)
IControlDesignerAccessor.SetDesignModeState(IDictionary)

En beskrivning av den här medlemmen finns i SetDesignModeState(IDictionary).

(Ärvd från Control)
IControlDesignerAccessor.SetOwnerControl(Control)

En beskrivning av den här medlemmen finns i SetOwnerControl(Control).

(Ärvd från Control)
IControlDesignerAccessor.UserData

En beskrivning av den här medlemmen finns i UserData.

(Ärvd från Control)
IDataBindingsAccessor.DataBindings

En beskrivning av den här medlemmen finns i DataBindings.

(Ärvd från Control)
IDataBindingsAccessor.HasDataBindings

En beskrivning av den här medlemmen finns i HasDataBindings.

(Ärvd från Control)
IExpressionsAccessor.Expressions

En beskrivning av den här medlemmen finns i Expressions.

(Ärvd från Control)
IExpressionsAccessor.HasExpressions

En beskrivning av den här medlemmen finns i HasExpressions.

(Ärvd från Control)
IParserAccessor.AddParsedSubObject(Object)

En beskrivning av den här medlemmen finns i AddParsedSubObject(Object).

(Ärvd från Control)
IPostBackDataHandler.LoadPostData(String, NameValueCollection)

Bearbetar postback-data för TreeView kontrollen.

IPostBackDataHandler.RaisePostDataChangedEvent()

Signalerar kontrollen TreeView för att meddela ASP.NET-programmet att kontrollens tillstånd har ändrats.

IPostBackEventHandler.RaisePostBackEvent(String)

TreeView Gör att kontrollen kan bearbeta en händelse som genereras när ett formulär publiceras på servern.

Tilläggsmetoder

Name Description
EnablePersistedSelection(BaseDataBoundControl)
Föråldrad.

Gör att markeringen kan sparas i datakontroller som stöder val och växling.

FindDataSourceControl(Control)

Returnerar datakällan som är associerad med datakontrollen för den angivna kontrollen.

FindFieldTemplate(Control, String)

Returnerar fältmallen för den angivna kolumnen i den angivna kontrollens namngivningscontainer.

FindMetaTable(Control)

Returnerar metatabellobjektet för den innehållande datakontrollen.

Gäller för

Se även