TreeView Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Exibe dados hierárquicos, como um sumário, em uma estrutura de árvore.
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
- Herança
- Atributos
- Implementações
Exemplos
Esta seção contém sete exemplos de código:
O primeiro exemplo de código demonstra como configurar os quadros para o segundo exemplo de código.
O segundo exemplo de código demonstra como usar a sintaxe declarativa para exibir dados estáticos no TreeView controle.
O terceiro exemplo de código demonstra como associar o TreeView controle a uma fonte de dados XML.
O quarto exemplo de código fornece dados XML de exemplo para o terceiro exemplo de código.
O quinto exemplo de código demonstra como usar o TreeView controle para navegação no site associando-o a um SiteMapDataSource controle.
O sexto exemplo de código fornece dados de mapa de site de exemplo para o quinto exemplo de código.
O sétimo exemplo de código demonstra como preencher os nós no TreeView controle do cliente.
O exemplo de código a seguir demonstra como configurar os quadros para o exemplo de código a seguir.
<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>
O exemplo de código a seguir demonstra como usar a sintaxe declarativa para exibir dados estáticos no TreeView controle. Este exemplo é usado no conjunto de quadros do exemplo anterior para exibir um sumário.
<%@ 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>
O exemplo de código a seguir demonstra como associar o TreeView controle a uma fonte de dados XML. Para que este exemplo funcione corretamente, você deve copiar os dados XML de exemplo, fornecidos após este exemplo de código, para um arquivo chamado 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>
O exemplo de código a seguir fornece dados XML de exemplo para o exemplo anterior.
<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>
O exemplo de código a seguir demonstra como usar o TreeView controle para navegação no site associando-o a um SiteMapDataSource controle. Para que este exemplo funcione corretamente, você deve copiar os dados de mapa do site de exemplo, fornecidos após este exemplo de código, para um arquivo chamado 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>
O exemplo de código a seguir fornece dados de mapa de site de exemplo para o exemplo de código anterior.
<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>
O exemplo de código a seguir demonstra como preencher os nós no TreeView controle do cliente. Quando a população de nós do lado do cliente está habilitada, os nós são preenchidos dinamicamente no cliente, sem a necessidade de postar de volta no servidor.
<%@ 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>
Comentários
Neste tópico:
Introdução
O TreeView controle é usado para exibir dados hierárquicos, como um sumário ou diretório de arquivos, em uma estrutura de árvore e dá suporte aos seguintes recursos:
Associação de dados que permite que os nós do controle sejam associados a dados XML, tabulares ou relacionais.
Navegação no site por meio da integração com o SiteMapDataSource controle.
Texto do nó que pode ser exibido como texto sem formatação ou hiperlinks.
Acesso programático ao TreeView modelo de objeto para criar árvores, preencher nós, definir propriedades e assim por diante dinamicamente.
População de nós do lado do cliente (em navegadores com suporte).
A capacidade de exibir uma caixa de seleção ao lado de cada nó.
Aparência personalizável por meio de temas, imagens definidas pelo usuário e estilos.
Observação
O TreeView controle foi projetado para ser usado dentro de um UpdatePanel controle somente quando EnableClientScript é definido como
true. UpdatePanel os controles são usados para atualizar as regiões selecionadas de uma página em vez de atualizar a página inteira com um postback. Para obter mais informações, consulte Visão geral do controle UpdatePanel e Partial-Page visão geral da renderização.
Nodes
O TreeView controle é composto por nós. Cada entrada na árvore é chamada de nó e é representada por um TreeNode objeto. Os tipos de nó são definidos da seguinte maneira:
Um nó que contém outros nós é chamado de nó pai.
O nó contido por outro nó é chamado de nó filho.
Um nó que não tem filhos é chamado de nó folha.
O nó que não está contido por nenhum outro nó, mas é o ancestral de todos os outros nós, é o nó raiz.
Um nó pode ser pai e filho, mas nós raiz, pai e folha são mutuamente exclusivos. Várias propriedades visuais e comportamentais de nós são determinadas por um nó raiz, filho ou folha.
Embora uma estrutura de árvore típica tenha apenas um nó raiz, o TreeView controle permite adicionar vários nós raiz à sua estrutura de árvore. Isso é útil quando você deseja exibir listagens de itens sem exibir um único nó raiz, como em uma lista de categorias de produtos.
Cada nó tem uma Text propriedade e uma Value propriedade. O valor da Text propriedade é exibido no TreeView, enquanto a Value propriedade é usada para armazenar quaisquer dados adicionais sobre o nó, como dados que são passados para o evento de postback associado ao nó.
Um nó pode estar em um dos dois modos: modo de seleção e modo de navegação. Por padrão, um nó está no modo de seleção. Para colocar um nó no modo de navegação, defina a NavigateUrl propriedade do nó como um valor diferente de uma cadeia de caracteres vazia (""). Para colocar um nó no modo de seleção, defina a NavigateUrl propriedade do nó como uma cadeia de caracteres vazia ("").
Observação
Alguns navegadores de Internet têm uma limitação que pode afetar o desempenho do TreeView controle. Por exemplo, o Microsoft Internet Explorer 6.0 tem um limite de caracteres de URL de 2067 caracteres que ele posta. Se o número de caracteres em uma URL de um nó for maior que esse número, a expansão desse nó falhará e nenhuma exceção será gerada.
Dados estáticos
O modelo de dados mais simples do controle são dados TreeView estáticos. Para exibir dados estáticos usando sintaxe declarativa, primeiro aninhar marcas de abertura e fechamento <Nodes> entre as marcas de abertura e fechamento do TreeView controle. Em seguida, crie a estrutura de árvore aninhando <asp:TreeNode> elementos entre as marcas de abertura e fechamento <Nodes> . Cada <asp:TreeNode> elemento representa um nó na árvore e é mapeado para um TreeNode objeto. Você pode definir as propriedades de cada nó definindo os atributos de seu <asp:TreeNode> elemento. Para criar nós filho, aninhar elementos adicionais <asp:TreeNode> entre as marcas de abertura e fechamento <asp:TreeNode> do nó pai.
Associação a dados
O TreeView controle também pode ser associado a dados. Você pode usar um dos dois métodos para associar o TreeView controle ao tipo de fonte de dados apropriado:
O TreeView controle pode usar qualquer controle de fonte de dados que implemente a IHierarchicalDataSource interface, como um XmlDataSource controle ou um SiteMapDataSource controle. Para associar a um controle de fonte de dados, defina a DataSourceID propriedade do TreeView controle como o ID valor do controle da fonte de dados. O TreeView controle é automaticamente associado ao controle de fonte de dados especificado. Esse é o método preferencial para associar a dados.
O TreeView controle também pode ser associado a um XmlDocument objeto ou um DataSet objeto com relações. Para associar a uma dessas fontes de dados, defina a DataSource propriedade do TreeView controle como a fonte de dados e chame o DataBind método.
Ao associar a uma fonte de dados em que cada item de dados contém várias propriedades (como um elemento XML com vários atributos), um nó exibe o valor retornado pelo ToString método do item de dados, por padrão. No caso de um elemento XML, o nó exibe o nome do elemento, que mostra a estrutura subjacente da árvore, mas não é muito útil de outra forma. Você pode associar um nó a uma propriedade de item de dados específica especificando associações de nó de árvore usando a DataBindings coleção. A DataBindings coleção contém TreeNodeBinding objetos que definem a relação entre um item de dados e o nó ao qual está vinculando. Você pode especificar os critérios para associação e a propriedade do item de dados a ser exibida no nó. Para obter mais informações sobre associações de nó de árvore, consulte TreeNodeBinding.
Importante
Um usuário mal-intencionado pode criar uma solicitação de retorno de chamada e obter dados para os nós do TreeView controle que o desenvolvedor de página não está exibindo. Portanto, a segurança dos dados deve ser implementada pela fonte de dados. Não use a MaxDataBindDepth propriedade para ocultar dados.
População de nós dinâmicos
Às vezes, não é prático definir estaticamente a estrutura da árvore porque a fonte de dados retorna muitos dados ou porque os dados a serem exibidos dependem das informações que você obtém em tempo de execução. Por isso, o TreeView controle dá suporte à população de nós dinâmicos. Quando a PopulateOnDemand propriedade de um nó é definida como true, esse nó é preenchido em tempo de execução quando o nó é expandido. Para preencher um nó dinamicamente, você deve definir um método de manipulação de eventos que contenha a lógica para preencher um nó para o TreeNodePopulate evento.
Os navegadores que dão suporte a scripts de retorno de chamada também podem aproveitar a população de nós do lado do cliente. (Isso inclui o Internet Explorer 5.5 e posterior e alguns outros navegadores.) A população de nós do lado do cliente permite que o TreeView controle preencha um nó usando o script do cliente quando os usuários expandem o nó, sem a necessidade de uma viagem de ida e volta para o servidor. Para obter mais informações sobre a população de nós do lado do cliente, consulte PopulateNodesFromClient.
Personalizando a interface do usuário
Há muitas maneiras de personalizar a aparência do TreeView controle. Primeiro, você pode especificar um estilo diferente (como tamanho e cor da fonte) para cada um dos tipos de nó.
Se você usar CSS (folhas de estilo em cascata) para personalizar a aparência do controle, use estilos embutidos ou um arquivo CSS separado, mas não ambos. Usar estilos embutidos e um arquivo CSS separado pode causar resultados inesperados. Para obter mais informações sobre como usar folhas de estilo com controles, consulte Controles do Servidor Web e Estilos CSS.
A tabela a seguir lista os estilos de nó disponíveis.
| Propriedade de estilo de nó | Descrição |
|---|---|
| HoverNodeStyle | As configurações de estilo de um nó quando o ponteiro do mouse é posicionado sobre ele. |
| LeafNodeStyle | As configurações de estilo para os nós folha. |
| NodeStyle | As configurações de estilo padrão para um nó. |
| ParentNodeStyle | As configurações de estilo para os nós pai. |
| RootNodeStyle | As configurações de estilo do nó raiz. |
| SelectedNodeStyle | As configurações de estilo de um nó selecionado. |
Você também pode controlar o estilo de nós em profundidades específicas dentro da árvore usando a LevelStyles coleção. O primeiro estilo da coleção corresponde ao estilo dos nós no primeiro nível da árvore. O segundo estilo na coleção corresponde ao estilo dos nós no segundo nível da árvore e assim por diante. Isso geralmente é usado para gerar menus de navegação no estilo de conteúdo em que os nós em determinada profundidade devem ter a mesma aparência, independentemente de terem nós filho.
Observação
Se um estilo for definido para um determinado nível de profundidade usando a LevelStyles coleção, esse estilo substituirá as configurações de estilo de nó raiz, pai ou folha para os nós nessa profundidade.
Outra maneira de alterar a aparência do controle é personalizar as imagens exibidas no TreeView controle. Você pode especificar seu próprio conjunto personalizado de imagens para as diferentes partes do controle definindo as propriedades mostradas na tabela a seguir.
| Propriedade Image | Descrição |
|---|---|
| CollapseImageUrl | A URL para uma imagem exibida para o indicador de nó recolhível. Essa imagem geralmente é um sinal de subtração (-). |
| ExpandImageUrl | A URL para uma imagem exibida para o indicador de nó expansível. Essa imagem geralmente é um sinal de adição (+). |
| LineImagesFolder | A URL para a pasta que contém as imagens de linha usadas para conectar nós pai a nós filho. A ShowLines propriedade também deve ser definida true para que essa propriedade tenha um efeito. |
| NoExpandImageUrl | A URL para uma imagem exibida para o indicador de nó não expansível. |
Observação
Você não precisa personalizar todas as propriedades de imagem. Se uma propriedade de imagem não estiver definida explicitamente, a imagem padrão interna será usada.
O TreeView controle também permite que você exiba uma caixa de seleção ao lado de um nó. Quando a ShowCheckBoxes propriedade é definida como um valor diferente TreeNodeTypes.None, as caixas de seleção são exibidas ao lado dos tipos de nó especificados.
Observação
A ShowCheckBoxes propriedade pode ser definida como uma combinação bit a bit dos TreeNodeTypes valores de membro de enumeração.
Sempre que a página é postada no servidor, a CheckedNodes coleção é preenchida automaticamente com os nós selecionados. Quando as caixas de seleção são exibidas, você pode usar o TreeNodeCheckChanged evento para executar uma rotina personalizada sempre que o estado de uma caixa de seleção for alterado entre postagens no servidor.
Eventos
O TreeView controle fornece vários eventos nos quais você pode programar. Isso permite que você execute uma rotina personalizada sempre que ocorrer um evento. A tabela a seguir lista os eventos compatíveis com o TreeView controle.
| Acontecimento | Descrição |
|---|---|
| TreeNodeCheckChanged | Ocorre quando as caixas de seleção do controle alteram o TreeView estado entre postagens no servidor. |
| SelectedNodeChanged | Ocorre quando um nó é selecionado no TreeView controle. |
| TreeNodeExpanded | Ocorre quando um nó é expandido no TreeView controle. |
| TreeNodeCollapsed | Ocorre quando um nó é recolhido no TreeView controle. |
| TreeNodePopulate | Ocorre quando um nó com sua PopulateOnDemand propriedade definida para true ser expandido no TreeView controle. |
| TreeNodeDataBound | Ocorre quando um item de dados é associado a um nó no TreeView controle. |
Rolagem
O TreeView controle não tem rolagem interna. Para adicionar rolagem, coloque o TreeView controle em um Panel controle e adicione barras de rolagem ao Panel controle. Para obter mais informações, consulte Visão geral do controle do servidor Web do painel.
Accessibility
A marcação renderizada por padrão para esse controle pode não estar em conformidade com os padrões de acessibilidade. Para obter detalhes sobre o suporte de acessibilidade para esse controle, consulte ASP.NET Controles e Acessibilidade.
Sintaxe declarativa
<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>
Construtores
| Nome | Description |
|---|---|
| TreeView() |
Inicializa uma nova instância da classe TreeView. |
Propriedades
| Nome | Description |
|---|---|
| AccessKey |
Obtém ou define a chave de acesso que permite navegar rapidamente até o controle do servidor Web. (Herdado de WebControl) |
| Adapter |
Obtém o adaptador específico do navegador para o controle. (Herdado de Control) |
| AppRelativeTemplateSourceDirectory |
Obtém ou define o diretório virtual relativo ao aplicativo do Page objeto ou UserControl que contém esse controle. (Herdado de Control) |
| Attributes |
Obtém a coleção de atributos arbitrários (somente para renderização) que não correspondem às propriedades no controle. (Herdado de WebControl) |
| AutoGenerateDataBindings |
Obtém ou define um valor que indica se o TreeView controle gera automaticamente associações de nó de árvore. |
| BackColor |
Obtém ou define a cor da tela de fundo do controle do servidor Web. (Herdado de WebControl) |
| BindingContainer |
Obtém o controle que contém a associação de dados desse controle. (Herdado de Control) |
| BorderColor |
Obtém ou define a cor da borda do controle Web. (Herdado de WebControl) |
| BorderStyle |
Obtém ou define o estilo de borda do controle do servidor Web. (Herdado de WebControl) |
| BorderWidth |
Obtém ou define a largura da borda do controle do servidor Web. (Herdado de WebControl) |
| CheckedNodes |
Obtém uma coleção de TreeNode objetos que representam os nós no TreeView controle que exibem uma caixa de seleção selecionada. |
| ChildControlsCreated |
Obtém um valor que indica se os controles filho do controle do servidor foram criados. (Herdado de Control) |
| ClientID |
Obtém a ID de controle para marcação HTML gerada por ASP.NET. (Herdado de Control) |
| ClientIDMode |
Obtém ou define o algoritmo usado para gerar o valor da ClientID propriedade. (Herdado de Control) |
| ClientIDSeparator |
Obtém um valor de caractere que representa o caractere separador usado na ClientID propriedade. (Herdado de Control) |
| CollapseImageToolTip |
Obtém ou define a Dica de Ferramenta para a imagem exibida para o indicador de nó recolhível. |
| CollapseImageUrl |
Obtém ou define a URL como uma imagem personalizada para o indicador de nó recolhível. |
| Context |
Obtém o HttpContext objeto associado ao controle do servidor para a solicitação da Web atual. (Herdado de Control) |
| Controls |
Obtém um ControlCollection objeto que representa os controles filho para um controle de servidor especificado na hierarquia da interface do usuário. (Herdado de Control) |
| ControlStyle |
Obtém o estilo do controle do servidor Web. Essa propriedade é usada principalmente por desenvolvedores de controle. (Herdado de WebControl) |
| ControlStyleCreated |
Obtém um valor que indica se um Style objeto foi criado para a ControlStyle propriedade. Essa propriedade é usada principalmente por desenvolvedores de controle. (Herdado de WebControl) |
| CssClass |
Obtém ou define a classe CSS (Folha de Estilos em Cascata) renderizada pelo controle do servidor Web no cliente. (Herdado de WebControl) |
| DataBindings |
Obtém uma coleção de TreeNodeBinding objetos que definem a relação entre um item de dados e o nó ao qual ele está associando. |
| DataItemContainer |
Obtém uma referência ao contêiner de nomenclatura se o contêiner de nomenclatura implementar IDataItemContainer. (Herdado de Control) |
| DataKeysContainer |
Obtém uma referência ao contêiner de nomenclatura se o contêiner de nomenclatura implementar IDataKeysControl. (Herdado de Control) |
| DataSource |
Obtém ou define o objeto do qual o controle associado a dados recupera sua lista de itens de dados. (Herdado de BaseDataBoundControl) |
| DataSourceID |
Obtém ou define a ID do controle do qual o controle associado a dados recupera sua lista de itens de dados. (Herdado de HierarchicalDataBoundControl) |
| DesignMode |
Obtém um valor que indica se um controle está sendo usado em uma superfície de design. (Herdado de Control) |
| EnableClientScript |
Obtém ou define um valor que indica se o controle renderiza o TreeView script do lado do cliente para lidar com eventos de expansão e recolhimento. |
| Enabled |
Obtém ou define um valor que indica se o controle do servidor Web está habilitado. (Herdado de WebControl) |
| EnableTheming |
Obtém ou define um valor que indica se os temas se aplicam a esse controle. (Herdado de WebControl) |
| EnableViewState |
Obtém ou define um valor que indica se o controle do servidor persiste seu estado de exibição e o estado de exibição de todos os controles filho que ele contém, para o cliente solicitante. (Herdado de Control) |
| Events |
Obtém uma lista de representantes do manipulador de eventos para o controle. Esta propriedade é somente para leitura. (Herdado de Control) |
| ExpandDepth |
Obtém ou define o número de níveis que são expandidos quando um TreeView controle é exibido pela primeira vez. |
| ExpandImageToolTip |
Obtém ou define a Dica de Ferramenta para a imagem exibida para o indicador de nó expansível. |
| ExpandImageUrl |
Obtém ou define a URL como uma imagem personalizada para o indicador de nó expansível. |
| Font |
Obtém as propriedades de fonte associadas ao controle do servidor Web. (Herdado de WebControl) |
| ForeColor |
Obtém ou define a cor do primeiro plano (normalmente a cor do texto) do controle do servidor Web. (Herdado de WebControl) |
| HasAttributes |
Obtém um valor que indica se o controle tem atributos definidos. (Herdado de WebControl) |
| HasChildViewState |
Obtém um valor que indica se os controles filho do controle do servidor atual têm configurações de estado de exibição salvas. (Herdado de Control) |
| Height |
Obtém ou define a altura do controle do servidor Web. (Herdado de WebControl) |
| HoverNodeStyle |
Obtém uma referência ao TreeNodeStyle objeto que permite definir a aparência de um nó quando o ponteiro do mouse é posicionado sobre ele. |
| ID |
Obtém ou define o identificador programático atribuído ao controle do servidor. (Herdado de Control) |
| IdSeparator |
Obtém o caractere usado para separar identificadores de controle. (Herdado de Control) |
| ImageSet |
Obtém ou define o grupo de imagens a serem usadas para o TreeView controle. |
| Initialized |
Obtém um valor que indica se o controle associado a dados foi inicializado. (Herdado de BaseDataBoundControl) |
| IsBoundUsingDataSourceID |
Obtém um valor que indica se a DataSourceID propriedade está definida. (Herdado de BaseDataBoundControl) |
| IsChildControlStateCleared |
Obtém um valor que indica se os controles contidos nesse controle têm estado de controle. (Herdado de Control) |
| IsDataBindingAutomatic |
Obtém um valor que indica se a associação de dados é automática. (Herdado de BaseDataBoundControl) |
| IsEnabled |
Obtém um valor que indica se o controle está habilitado. (Herdado de WebControl) |
| IsTrackingViewState |
Obtém um valor que indica se o controle do servidor está salvando alterações em seu estado de exibição. (Herdado de Control) |
| IsUsingModelBinders |
Quando implementado em uma classe derivada, obtém um valor que indica se o controle está usando associadores de modelo. (Herdado de BaseDataBoundControl) |
| IsViewStateEnabled |
Obtém um valor que indica se o estado de exibição está habilitado para esse controle. (Herdado de Control) |
| LeafNodeStyle |
Obtém uma referência ao TreeNodeStyle objeto que permite definir a aparência dos nós folha. |
| LevelStyles |
Obtém uma coleção de Style objetos que representam os estilos de nó nos níveis individuais da árvore. |
| LineImagesFolder |
Obtém ou define o caminho para uma pasta que contém as imagens de linha usadas para conectar nós filho a nós pai. |
| LoadViewStateByID |
Obtém um valor que indica se o controle participa no carregamento de seu estado de exibição ID em vez de índice. (Herdado de Control) |
| MaxDataBindDepth |
Obtém ou define o número máximo de níveis de árvore a serem associados ao TreeView controle. |
| NamingContainer |
Obtém uma referência ao contêiner de nomenclatura do controle de servidor, que cria um namespace exclusivo para diferenciar entre controles de servidor com o mesmo ID valor de propriedade. (Herdado de Control) |
| NodeIndent |
Obtém ou define a quantidade de recuo (em pixels) para os nós filho do TreeView controle. |
| Nodes |
Obtém uma coleção de TreeNode objetos que representa os nós raiz no TreeView controle. |
| NodeStyle |
Obtém uma referência ao TreeNodeStyle objeto que permite definir a aparência padrão dos nós no TreeView controle. |
| NodeWrap |
Obtém ou define um valor que indica se o texto encapsula em um nó quando o nó fica sem espaço. |
| NoExpandImageUrl |
Obtém ou define a URL como uma imagem personalizada para o indicador de nó não expansível. |
| Page |
Obtém uma referência à Page instância que contém o controle do servidor. (Herdado de Control) |
| Parent |
Obtém uma referência ao controle pai do controle do servidor na hierarquia de controle de página. (Herdado de Control) |
| ParentNodeStyle |
Obtém uma referência ao TreeNodeStyle objeto que permite definir a aparência dos nós pai no TreeView controle. |
| PathSeparator |
Obtém ou define o caractere usado para delimitar os valores de nó especificados pela ValuePath propriedade. |
| PopulateNodesFromClient |
Obtém ou define um valor que indica se os dados do nó são preenchidos sob demanda do cliente. |
| RenderingCompatibility |
Obtém um valor que especifica a versão ASP.NET com a qual o HTML renderizado será compatível. (Herdado de Control) |
| RequiresDataBinding |
Obtém ou define um valor que indica se o DataBind() método deve ser chamado. (Herdado de BaseDataBoundControl) |
| RootNodeStyle |
Obtém uma referência ao TreeNodeStyle objeto que permite definir a aparência do nó raiz no TreeView controle. |
| SelectedNode |
Obtém um TreeNode objeto que representa o nó selecionado no TreeView controle. |
| SelectedNodeStyle |
Obtém o TreeNodeStyle objeto que controla a aparência do nó selecionado no TreeView controle. |
| SelectedValue |
Obtém o valor do nó selecionado. |
| ShowCheckBoxes |
Obtém ou define um valor que indica quais tipos de nó exibirão uma caixa de seleção no TreeView controle. |
| ShowExpandCollapse |
Obtém ou define um valor que indica se os indicadores de nó de expansão são exibidos. |
| ShowLines |
Obtém ou define um valor que indica se as linhas que conectam nós filho a nós pai são exibidas. |
| Site |
Obtém informações sobre o contêiner que hospeda o controle atual quando renderizado em uma superfície de design. (Herdado de Control) |
| SkinID |
Obtém ou define a pele a ser aplicada ao controle. (Herdado de WebControl) |
| SkipLinkText |
Obtém ou define um valor usado para renderizar texto alternativo para leitores de tela ignorarem o conteúdo do controle. |
| Style |
Obtém uma coleção de atributos de texto que serão renderizados como um atributo de estilo na marca externa do controle do servidor Web. (Herdado de WebControl) |
| SupportsDisabledAttribute |
Obtém um valor que indica se o controle deve definir o |
| TabIndex |
Obtém ou define o índice de tabulação do controle do servidor Web. (Herdado de WebControl) |
| TagKey |
Obtém o HtmlTextWriterTag valor do TreeView controle. |
| TagName |
Obtém o nome da marca de controle. Essa propriedade é usada principalmente por desenvolvedores de controle. (Herdado de WebControl) |
| Target |
Obtém ou define a janela de destino ou o quadro no qual exibir o conteúdo da página da Web associado a um nó. |
| TemplateControl |
Obtém ou define uma referência ao modelo que contém esse controle. (Herdado de Control) |
| TemplateSourceDirectory |
Obtém o diretório virtual do Page ou UserControl que contém o controle de servidor atual. (Herdado de Control) |
| ToolTip |
Obtém ou define o texto exibido quando o ponteiro do mouse passa o mouse sobre o controle do servidor Web. (Herdado de WebControl) |
| UniqueID |
Obtém o identificador exclusivo e hierarquicamente qualificado para o controle do servidor. (Herdado de Control) |
| ValidateRequestMode |
Obtém ou define um valor que indica se o controle verifica a entrada do cliente do navegador em busca de valores potencialmente perigosos. (Herdado de Control) |
| ViewState |
Obtém um dicionário de informações de estado que permite salvar e restaurar o estado de exibição de um controle de servidor em várias solicitações para a mesma página. (Herdado de Control) |
| ViewStateIgnoresCase |
Obtém um valor que indica se o StateBag objeto não diferencia maiúsculas de minúsculas. (Herdado de Control) |
| ViewStateMode |
Obtém ou define o modo de estado de exibição desse controle. (Herdado de Control) |
| Visible |
Obtém ou define um valor que indica se o controle é renderizado como interface do usuário na página. |
| Width |
Obtém ou define a largura do controle do servidor Web. (Herdado de WebControl) |
Métodos
| Nome | Description |
|---|---|
| AddAttributesToRender(HtmlTextWriter) |
Adiciona atributos HTML e estilos que precisam ser renderizados ao controle especificado HtmlTextWriter . |
| AddedControl(Control, Int32) |
Chamado depois que um controle filho é adicionado à Controls coleção do Control objeto. (Herdado de Control) |
| AddParsedSubObject(Object) |
Notifica o controle do servidor de que um elemento, XML ou HTML, foi analisado e adiciona o elemento ao objeto do controle do ControlCollection servidor. (Herdado de Control) |
| ApplyStyle(Style) |
Copia todos os elementos nãoblank do estilo especificado para o controle da Web, substituindo quaisquer elementos de estilo existentes do controle. Esse método é usado principalmente por desenvolvedores de controle. (Herdado de WebControl) |
| ApplyStyleSheetSkin(Page) |
Aplica as propriedades de estilo definidas na folha de estilos de página ao controle. (Herdado de Control) |
| BeginRenderTracing(TextWriter, Object) |
Inicia o rastreamento em tempo de design dos dados de renderização. (Herdado de Control) |
| BuildProfileTree(String, Boolean) |
Coleta informações sobre o controle do servidor e o Trace entrega na propriedade a ser exibida quando o rastreamento está habilitado para a página. (Herdado de Control) |
| ClearCachedClientID() |
Define o valor armazenado em ClientID cache como |
| ClearChildControlState() |
Exclui as informações de estado de controle para os controles filho do controle do servidor. (Herdado de Control) |
| ClearChildState() |
Exclui as informações de estado de exibição e de estado de controle para todos os controles filho do controle do servidor. (Herdado de Control) |
| ClearChildViewState() |
Exclui as informações de estado de exibição para todos os controles filho do controle do servidor. (Herdado de Control) |
| ClearEffectiveClientIDMode() |
Define a ClientIDMode propriedade da instância de controle atual e de qualquer controle filho como Inherit. (Herdado de Control) |
| CollapseAll() |
Fecha cada nó na árvore. |
| ConfirmInitState() |
Define o estado inicializado do controle associado a dados. (Herdado de BaseDataBoundControl) |
| CopyBaseAttributes(WebControl) |
Copia as propriedades não encapsuladas pelo Style objeto do controle de servidor Web especificado para o controle do servidor Web do qual esse método é chamado. Esse método é usado principalmente por desenvolvedores de controle. (Herdado de WebControl) |
| CreateChildControls() |
Chamado pela estrutura de página ASP.NET para notificar os controles de servidor que usam a implementação baseada em composição para criar quaisquer controles filho que eles contenham em preparação para postar de volta ou renderização. (Herdado de Control) |
| CreateControlCollection() |
Cria uma coleção para armazenar controles filho. |
| CreateControlStyle() |
Cria o objeto de estilo que é usado internamente pela WebControl classe para implementar todas as propriedades relacionadas ao estilo. Esse método é usado principalmente por desenvolvedores de controle. (Herdado de WebControl) |
| CreateNode() |
Retorna uma nova instância da TreeNode classe. É CreateNode() um método auxiliar. |
| DataBind() |
Chama o DataBind() método da classe base. |
| DataBind(Boolean) |
Associa uma fonte de dados ao controle de servidor invocado e a todos os seus controles filho com uma opção para gerar o DataBinding evento. (Herdado de Control) |
| DataBindChildren() |
Associa uma fonte de dados aos controles filho do controle do servidor. (Herdado de Control) |
| Dispose() |
Permite que um controle de servidor execute a limpeza final antes de ser liberado da memória. (Herdado de Control) |
| EndRenderTracing(TextWriter, Object) |
Encerra o rastreamento em tempo de design dos dados de renderização. (Herdado de Control) |
| EnsureChildControls() |
Determina se o controle do servidor contém controles filho. Se isso não acontecer, ele criará controles filho. (Herdado de Control) |
| EnsureDataBound() |
Chama o DataBind() método se a DataSourceID propriedade estiver definida e o controle associado a dados for marcado para exigir associação. (Herdado de BaseDataBoundControl) |
| EnsureID() |
Cria um identificador para controles que não têm um identificador atribuído. (Herdado de Control) |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| ExpandAll() |
Abre cada nó na árvore. |
| FindControl(String, Int32) |
Pesquisa o contêiner de nomenclatura atual para um controle de servidor com o especificado |
| FindControl(String) |
Pesquisa o contêiner de nomenclatura atual para um controle de servidor com o parâmetro especificado |
| FindNode(String) |
Recupera o TreeNode objeto no TreeView controle no caminho de valor especificado. |
| Focus() |
Define o foco de entrada como um controle. (Herdado de Control) |
| GetCallbackResult() |
Retorna o resultado de um evento de retorno de chamada direcionado a um controle. |
| GetData(String) |
Recupera um HierarchicalDataSourceView objeto que o controle associado a dados usa para executar operações de dados. (Herdado de HierarchicalDataBoundControl) |
| GetDataSource() |
Recupera o IHierarchicalDataSource que o controle associado a dados está associado, se houver. (Herdado de HierarchicalDataBoundControl) |
| GetDesignModeState() |
Obtém dados de tempo de design para um controle. (Herdado de Control) |
| GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
| GetRouteUrl(Object) |
Obtém a URL que corresponde a um conjunto de parâmetros de rota. (Herdado de Control) |
| GetRouteUrl(RouteValueDictionary) |
Obtém a URL que corresponde a um conjunto de parâmetros de rota. (Herdado de Control) |
| GetRouteUrl(String, Object) |
Obtém a URL que corresponde a um conjunto de parâmetros de rota e um nome de rota. (Herdado de Control) |
| GetRouteUrl(String, RouteValueDictionary) |
Obtém a URL que corresponde a um conjunto de parâmetros de rota e um nome de rota. (Herdado de Control) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| GetUniqueIDRelativeTo(Control) |
Retorna a parte prefixada da UniqueID propriedade do controle especificado. (Herdado de Control) |
| HasControls() |
Determina se o controle do servidor contém controles filho. (Herdado de Control) |
| HasEvents() |
Retorna um valor que indica se os eventos são registrados para o controle ou quaisquer controles filho. (Herdado de Control) |
| IsLiteralContent() |
Determina se o controle do servidor contém apenas conteúdo literal. (Herdado de Control) |
| LoadControlState(Object) |
Restaura informações de estado de controle de uma solicitação de página anterior que foi salva pelo SaveControlState() método. (Herdado de Control) |
| LoadPostData(String, NameValueCollection) |
Processa dados de postback para o TreeView controle. |
| LoadViewState(Object) |
Carrega o estado de exibição salvo anteriormente do TreeView controle. |
| MapPathSecure(String) |
Recupera o caminho físico para o qual um caminho virtual, absoluto ou relativo, é mapeado. (Herdado de Control) |
| MarkAsDataBound() |
Define o estado do controle no estado de exibição como associado com êxito aos dados. (Herdado de HierarchicalDataBoundControl) |
| MemberwiseClone() |
Cria uma cópia superficial do Objectatual. (Herdado de Object) |
| MergeStyle(Style) |
Copia todos os elementos nãoblank do estilo especificado para o controle da Web, mas não substituirá nenhum elemento de estilo existente do controle. Esse método é usado principalmente por desenvolvedores de controle. (Herdado de WebControl) |
| OnBubbleEvent(Object, EventArgs) |
Determina se o evento para o controle do servidor é passado para a hierarquia de controle do servidor de interface do usuário da página. (Herdado de Control) |
| OnDataBinding(EventArgs) |
Aciona o evento DataBinding. (Herdado de Control) |
| OnDataBound(EventArgs) |
Aciona o evento DataBound. (Herdado de BaseDataBoundControl) |
| OnDataPropertyChanged() |
Chamado quando uma das propriedades de identificação da fonte de dados base é alterada, para associar novamente o controle associado a dados a seus dados. (Herdado de HierarchicalDataBoundControl) |
| OnDataSourceChanged(Object, EventArgs) |
Chamado quando a IHierarchicalDataSource instância com a qual o controle associado a dados funciona aciona o DataSourceChanged evento. (Herdado de HierarchicalDataBoundControl) |
| OnInit(EventArgs) |
Aciona o evento Init. |
| OnLoad(EventArgs) |
Manipula o Load evento. (Herdado de HierarchicalDataBoundControl) |
| OnPagePreLoad(Object, EventArgs) |
Define o estado inicializado do controle associado a dados antes que o controle seja carregado. (Herdado de HierarchicalDataBoundControl) |
| OnPreRender(EventArgs) |
Aciona o evento PreRender. |
| OnSelectedNodeChanged(EventArgs) |
Gera o SelectedNodeChanged evento do TreeView controle. |
| OnTreeNodeCheckChanged(TreeNodeEventArgs) |
Gera o TreeNodeCheckChanged evento do TreeView controle. |
| OnTreeNodeCollapsed(TreeNodeEventArgs) |
Gera o TreeNodeCollapsed evento do TreeView controle. |
| OnTreeNodeDataBound(TreeNodeEventArgs) |
Gera o TreeNodeDataBound evento do TreeView controle. |
| OnTreeNodeExpanded(TreeNodeEventArgs) |
Gera o TreeNodeExpanded evento do TreeView controle. |
| OnTreeNodePopulate(TreeNodeEventArgs) |
Gera o TreeNodePopulate evento do TreeView controle. |
| OnUnload(EventArgs) |
Aciona o evento Unload. (Herdado de Control) |
| OpenFile(String) |
Obtém um Stream usado para ler um arquivo. (Herdado de Control) |
| PerformDataBinding() |
Cria todos os nós com base na fonte de dados. |
| PerformSelect() |
Recupera dados da fonte de dados associada. (Herdado de HierarchicalDataBoundControl) |
| RaiseBubbleEvent(Object, EventArgs) |
Atribui todas as fontes do evento e suas informações ao pai do controle. (Herdado de Control) |
| RaiseCallbackEvent(String) |
Gera o evento de retorno de chamada usando os argumentos especificados. |
| RaisePostBackEvent(String) |
Permite que o TreeView controle processe um evento gerado quando um formulário é postado no servidor. O RaisePostBackEvent(String) método é um método auxiliar para o ICallbackEventHandler.RaiseCallbackEvent(String) método. |
| RaisePostDataChangedEvent() |
Sinaliza o TreeView controle para notificar o aplicativo ASP.NET de que o estado do controle foi alterado. |
| RemovedControl(Control) |
Chamado depois que um controle filho é removido da Controls coleção do Control objeto. (Herdado de Control) |
| Render(HtmlTextWriter) |
Renderiza o controle para o gravador HTML especificado. (Herdado de WebControl) |
| RenderBeginTag(HtmlTextWriter) |
Renderiza a marca de abertura HTML do controle para o gravador especificado. |
| RenderChildren(HtmlTextWriter) |
Gera o conteúdo dos filhos de um controle de servidor para um objeto fornecido HtmlTextWriter , que grava o conteúdo a ser renderizado no cliente. (Herdado de Control) |
| RenderContents(HtmlTextWriter) |
Renderiza os nós no TreeView controle. |
| RenderControl(HtmlTextWriter, ControlAdapter) |
Gera conteúdo de controle de servidor para um objeto fornecido HtmlTextWriter usando um objeto fornecido ControlAdapter . (Herdado de Control) |
| RenderControl(HtmlTextWriter) |
O servidor de saída controla o conteúdo de um objeto fornecido HtmlTextWriter e armazena informações de rastreamento sobre o controle se o rastreamento estiver habilitado. (Herdado de Control) |
| RenderEndTag(HtmlTextWriter) |
Renderiza a marca de fechamento HTML do controle para o gravador especificado. |
| ResolveAdapter() |
Obtém o adaptador de controle responsável por renderizar o controle especificado. (Herdado de Control) |
| ResolveClientUrl(String) |
Obtém uma URL que pode ser usada pelo navegador. (Herdado de Control) |
| ResolveUrl(String) |
Converte uma URL em uma que é utilizável no cliente solicitante. (Herdado de Control) |
| SaveControlState() |
Salva as alterações de estado do controle do servidor que ocorreram desde o momento em que a página foi postada de volta no servidor. (Herdado de Control) |
| SaveViewState() |
Salva o estado do TreeView controle. |
| SetDesignModeState(IDictionary) |
Define dados de tempo de design para um controle. (Herdado de Control) |
| SetNodeDataBound(TreeNode, Boolean) |
Permite que uma classe derivada defina se o controle especificado TreeNode está associado a dados. |
| SetNodeDataItem(TreeNode, Object) |
Permite que uma classe derivada defina o item de dados para o controle especificado TreeNode . |
| SetNodeDataPath(TreeNode, String) |
Permite que uma classe derivada defina o caminho de dados para o controle especificado TreeNode . |
| SetRenderMethodDelegate(RenderMethod) |
Atribui um representante do manipulador de eventos para renderizar o controle do servidor e seu conteúdo em seu controle pai. (Herdado de Control) |
| SetTraceData(Object, Object, Object) |
Define dados de rastreamento para rastreamento em tempo de design de dados de renderização, usando o objeto rastreado, a chave de dados de rastreamento e o valor dos dados de rastreamento. (Herdado de Control) |
| SetTraceData(Object, Object) |
Define dados de rastreamento para rastreamento em tempo de design de dados de renderização, usando a chave de dados de rastreamento e o valor dos dados de rastreamento. (Herdado de Control) |
| ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
| TrackViewState() |
Controla as alterações de estado de exibição no TreeView controle para que elas possam ser armazenadas no StateBag objeto do controle. Isso StateBag é acessível por meio da ViewState propriedade. |
| ValidateDataSource(Object) |
Verifica se o objeto ao qual um controle associado a dados se associa é aquele com o qual ele pode trabalhar. (Herdado de HierarchicalDataBoundControl) |
Eventos
| Nome | Description |
|---|---|
| DataBinding |
Ocorre quando o controle do servidor é associado a uma fonte de dados. (Herdado de Control) |
| DataBound |
Ocorre depois que o controle do servidor é associado a uma fonte de dados. (Herdado de BaseDataBoundControl) |
| Disposed |
Ocorre quando um controle de servidor é liberado da memória, que é o último estágio do ciclo de vida do controle do servidor quando uma página ASP.NET é solicitada. (Herdado de Control) |
| Init |
Ocorre quando o controle do servidor é inicializado, que é a primeira etapa em seu ciclo de vida. (Herdado de Control) |
| Load |
Ocorre quando o controle do servidor é carregado no Page objeto. (Herdado de Control) |
| PreRender |
Ocorre depois que o Control objeto é carregado, mas antes da renderização. (Herdado de Control) |
| SelectedNodeChanged |
Ocorre quando um nó é selecionado no TreeView controle. |
| TreeNodeCheckChanged |
Ocorre quando uma caixa de seleção no controle altera o TreeView estado entre postagens no servidor. |
| TreeNodeCollapsed |
Ocorre quando um nó é recolhido no TreeView controle. |
| TreeNodeDataBound |
Ocorre quando um item de dados é associado a um nó no TreeView controle. |
| TreeNodeExpanded |
Ocorre quando um nó é expandido no TreeView controle. |
| TreeNodePopulate |
Ocorre quando um nó com sua PopulateOnDemand propriedade definida para |
| Unload |
Ocorre quando o controle do servidor é descarregado da memória. (Herdado de Control) |
Implantações explícitas de interface
| Nome | Description |
|---|---|
| IAttributeAccessor.GetAttribute(String) |
Obtém um atributo do controle Web com o nome especificado. (Herdado de WebControl) |
| IAttributeAccessor.SetAttribute(String, String) |
Define um atributo do controle Web como o nome e o valor especificados. (Herdado de WebControl) |
| ICallbackEventHandler.GetCallbackResult() |
Retorna o resultado de um evento de retorno de chamada direcionado a um controle. |
| ICallbackEventHandler.RaiseCallbackEvent(String) |
Gera o evento de retorno de chamada usando os argumentos especificados. |
| IControlBuilderAccessor.ControlBuilder |
Para obter uma descrição deste membro, consulte ControlBuilder. (Herdado de Control) |
| IControlDesignerAccessor.GetDesignModeState() |
Para obter uma descrição deste membro, consulte GetDesignModeState(). (Herdado de Control) |
| IControlDesignerAccessor.SetDesignModeState(IDictionary) |
Para obter uma descrição deste membro, consulte SetDesignModeState(IDictionary). (Herdado de Control) |
| IControlDesignerAccessor.SetOwnerControl(Control) |
Para obter uma descrição deste membro, consulte SetOwnerControl(Control). (Herdado de Control) |
| IControlDesignerAccessor.UserData |
Para obter uma descrição deste membro, consulte UserData. (Herdado de Control) |
| IDataBindingsAccessor.DataBindings |
Para obter uma descrição deste membro, consulte DataBindings. (Herdado de Control) |
| IDataBindingsAccessor.HasDataBindings |
Para obter uma descrição deste membro, consulte HasDataBindings. (Herdado de Control) |
| IExpressionsAccessor.Expressions |
Para obter uma descrição deste membro, consulte Expressions. (Herdado de Control) |
| IExpressionsAccessor.HasExpressions |
Para obter uma descrição deste membro, consulte HasExpressions. (Herdado de Control) |
| IParserAccessor.AddParsedSubObject(Object) |
Para obter uma descrição deste membro, consulte AddParsedSubObject(Object). (Herdado de Control) |
| IPostBackDataHandler.LoadPostData(String, NameValueCollection) |
Processa dados de postback para o TreeView controle. |
| IPostBackDataHandler.RaisePostDataChangedEvent() |
Sinaliza o TreeView controle para notificar o aplicativo ASP.NET de que o estado do controle foi alterado. |
| IPostBackEventHandler.RaisePostBackEvent(String) |
Permite que o TreeView controle processe um evento gerado quando um formulário é postado no servidor. |
Métodos de Extensão
| Nome | Description |
|---|---|
| EnablePersistedSelection(BaseDataBoundControl) |
Obsoleto.
Permite que a seleção seja mantida em controles de dados que dão suporte à seleção e à paginação. |
| FindDataSourceControl(Control) |
Retorna a fonte de dados associada ao controle de dados para o controle especificado. |
| FindFieldTemplate(Control, String) |
Retorna o modelo de campo para a coluna especificada no contêiner de nomenclatura do controle especificado. |
| FindMetaTable(Control) |
Retorna o objeto metatável para o controle de dados que contém. |