LOGIN:

iMasters | Por uma internet mais criativa e dinâmica

Feeds

.Net

Feed da seção .Net

Newsletter de .Net


Terça-feira, 17/02/2004 - 02:59 - Por Ramon Durães
Seções relacionadas:

TreeView IE WebControl com banco de dados

Introdução

Ao decorrer desta matéria, utilizaremos o controle WebControl TreeView, que vem junto com o pacote IE WebControl que podemos baixar clicando aqui.

O exemplo abaixo acessa uma base de dados agrupando o resultado e adicionando ao ListView. O segredo desse componente é adicionar os Nodes. Que são os itens. Então tenha sempre a preocupação de quando adicionar um Node, este Node tem que ser adicionado em um local na arvore.

TreeView com banco de dados:

Insira um webform e adicione um componente TreeView

Adicionando Treeview:

Inserido procedimento Page_Load  

Private Sub Page_Load( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase .Load
If Not Me .Page.IsPostBack Then
'Procedimento para Carregar Treeview
Me .CarregaTreeView()
End If
End Sub

Inserido procedimento para carregar TreeView

'
'Aqui está o codigo para carregarTreeview
Sub CarregaTreeView()
Dim strQuery As System.Text.StringBuilder
Dim strCategoria As String = ""
Dim dtProdutos As DataTable
strQuery.Append("select P.ProductID,ProductName,C.CategoryName from Products P,Categories C ")
strQuery.Append("where P.CategoryID=C.CategoryID ")
strQuery.Append("order by C.CategoryName,P.ProductName asc ")
dtProdutos = Me .ExecutaQuery(strQuery.ToString)
TreeView1.Nodes.Clear() ' Limpando Treeview
TreeView1.ExpandLevel = 1 ' Expandindo
Dim Node As New TreeNode ' Inicializando Node
Dim i As Int32 = 0 ' Variavel para loop

'//////////////////////////////////////////////////////////////////
'//// Adicionando Node Raiz
'//////////////////////////////////////////////////////////////////

Node.ImageUrl = "imagestree/xpMyComp.gif" ' Normal
Node.ExpandedImageUrl = "imagestree/xpMyComp.gif" ' Expandido
Node.Text = "Produtos"
TreeView1.Nodes.AddAt(0, Node) ' Adicionando 

'////////////////////////////////////////////////////////////////////////////
'// Adicionando nodes
'// O Código abaixo realiza loop pelo DataTable e Agrupa
'////////////////////////////////////////////////////////////////////////////

Try
For i = 0 To dtProdutos.Rows.Count - 1
If Not strCategoria.Equals(dtProdutos.Rows(i)(2)) Then
'Node Pai Produtos
strCategoria = Convert.ToString(dtProdutos.Rows(i)(2))
Node = New TreeNode
Node.ImageUrl = "imagestree/xpPanel.gif" ' Image
Node.ExpandedImageUrl = "imagestree/xpPanel.gif"
Node.Text = strCategoria ' Descricao
TreeView1.Nodes(0).Nodes.Add(Node) ' Adicionando 

'Node Produtos_Filho

Node = New TreeNode
Node.ImageUrl = "imagestree/person.gif"
Node.ExpandedImageUrl = "imagestree/person.gif"
Node.Text = Convert.ToString(dtProdutos.Rows(i)(1))
Node.NavigateUrl = "produtos.aspx?id=" + Convert.ToString(dtProdutos.Rows(i)(0))
Node.Target = "_TOP"
TreeView1.Nodes(0).Nodes(TreeView1.Nodes(0).Nodes.Count - 1).Nodes.Add(Node)

Else

'Node Produtos_Filho

Node = New TreeNode
Node.ImageUrl = "imagestree/person.gif"
Node.ExpandedImageUrl = "imagestree/person.gif"
Node.Text = Convert.ToString(dtProdutos.Rows(i)(1))
Node.NavigateUrl = "produtos.aspx?id=" + Convert.ToString(dtProdutos.Rows(i)(0))
Node.Target = "_TOP"
TreeView1.Nodes(0).Nodes(TreeView1.Nodes(0).Nodes.Count - 1).Nodes.Add(Node)
End If
Next
Catch ex As Exception
Response.Write("Falha Treeview " + ex.Message.ToString)
End Try
End Sub

Inserido procedimento para consulta ao banco de dados

'Executa query no banco de dados e retorna DataTable
'Ajustar String de acesso banco de dados de acordo com necessidade
Private Function ExecutaQuery( ByVal query As String ) As DataTable
Dim conn As New SqlConnection("Data Source=127.0.0.1; Initial atalog=Northwind;UID=sa;Pwd=")
Dim da As New SqlDataAdapter(query, conn)
Dim dt As New DataTable
Try
da.Fill(dt) 
Catch ex As SqlException
Response.Write("Erro SQL" + ex.Message.ToString)
Catch ex As Exception
Response.Write("Erro Geral:" + ex.Message.ToString)
Finally
dt.Dispose()
da.Dispose()
conn.Dispose()
End Try
Return dt
End Function

Finalizando
Este é um ótimo componente e colocando boas imagens você conseguirá um bom resultado na sua aplicação. Para fazer download das imagens que utilizei. aqui .

O que você gostaria de ver? Aguardo seu comentário! Participe! Até próximo artigo!

Todos os artigos de Ramon Durães

1 comentários publicados

  • 1. mcfg

    Terça-feira, 25/10/2005, por Caio

    não funcionou, preciso tirar algumas duvidas, existe como? Obrigado

    Responder comentário

Poste um comentário


Os textos publicados neste espaço são de responsabilidade única de seus autores (colunistas e leitores) e podem não expressar necessariamente a opinião do iMasters.

Sobre o autor

Ramon Durães é autor da frase “Não tem que ser difícil”. Possui larga experiência em tecnologia Microsoft. É Microsoft Most Valuable Professional (MVP), Trabalha como Software Engineer na 2pc Professional Consulting onde trabalha com empresas ligadas ao desenvolvimento de software fornecendo amplo suporte na migração para .NET, arquitetura de software e adoção de Visual Studio Team System. Realiza palestras e treinamentos nos maiores eventos do Brasil. Entre em contato pelo blog (http://www.2pc.com.br/).


Indique para um amigo

captcha

TI SHOP Produtos iMasters

  • Lançamento: CD-ROM Treinamento Aplicado de SQL - Lançamento! Treinamento Aplicado de SQL - Aprenda a trabalhar com SQL com bancos de dados Oracle e SQL Server. São mais de 100 tópicos explicados por Mauro Pichilliani, um articulistas mais lidos do iMasters. Aproveite! Apenas R$ 69,90 no TI SHOP.
  • Lançamento: Livro iMasters "O Encontro de 2 Mundos"- Este livro conta com 56 crônicas de profissionais mais admirados e influentes do mercado brasileiro de Internet. Aproveite o preço especial para leitores do iMasters. Apenas R$ 40,00 e envio imediato!
  • DVD Curso Completo de Photoshop - Do conceito à finalização Lançamento! Curso Completo de Photoshop, em DVD, com mais de 230 aulas dividas em 4 módulos: conceito, básico, avançado e finalização. Apenas R$ 69,50 no TI SHOP - Frete com 50% de desconto
  • DVD Javascript Starter - Curso Completo Com mais de 9 horas de vídeo-aulas, é um curso completo sobre Javascript. Ideal para quem deseja aprender a linguagem. Apenas R$ 64,90 no TI SHOP - Frete com 50% de desconto!

2001 - iMasters FFPA Informática Ltda - Todos os direitos reservados.