Neste artigo vou mostrar como carregar dados XML em um controle Dropdownlist em uma aplicação ASP.NET Web Forms. |
Na verdade, basta usar um DataSet e utilizar o método ReadXml para carregar os dados XML, e, depois usar as propriedades DataTextField e DataValueField usando o DataSet.
Se você deseja saber mais sobre o controle DropdownList visite o artigo : Usando DropDownList em páginas ASP.NET - Macoratti .
Vejamos a seguir um exemplo bem simples de como realizar essa tarefa.
Recursos usados :
Preenchendo um dropdownlist com dados XML
Abra o VS 2015 Community e clique em New Project;
A seguir selecione Visual Basic e o template ASP .NET Web Application;
Informe o nome ASPNet_Dropdownlist; e clique no botão OK;
A seguir selecione o template Empty e marque Web Forms , sem autenticação nem hospedagem na nuvem e clique em OK;
Será criada
uma aplicação Web vazia. Vamos incluir uma página Default.aspx no
projeto.
No menu
Project clique em Add New Item e selecione o template Web Form
informando o nome Default.aspx e clicando em Add:
Selecione o arquivo Default.aspx e a partir da ToolBox inclua um controle DropDownlist na página e informe o nome ddlProdutos:
Criando o arquivo XML
Vamos criar um arquivo XML que conterá os dados que vamos exibir. No menu Project clique em Add New Item;
A seguir selecione o template XML File, informe o nome Produtos e clique em Add;
A seguir
inclua o seguinte código neste arquivo:
<?xml version="1.0" encoding="utf-8" ?>
<Produtos>
<Produto>
<ID>1</ID>
<Nome>Caneta</Nome>
</Produto>
<Produto>
<ID>2</ID>
<Nome>Caderno</Nome>
</Produto>
<Produto>
<ID>3</ID>
<Nome>Borracha</Nome>
</Produto>
<Produto>
<ID>4</ID>
<Nome>Estojo</Nome>
</Produto>
<Produto>
<ID>5</ID>
<Nome>Mochila</Nome>
</Produto>
</Produtos>
|
Implementando o código para carregar os dados XML
A seguir vamos usar o evento Load da página Default.aspx para incluir o código que vai acessar o arquivo XML, gerar um DataView, fazer a ordenação pelo nome e exibir os dados:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
'define um dataset
Dim RS As DataSet = New DataSet()
'le o conteúdo do arquivo XML
RS.ReadXml(Server.MapPath("~/Produtos.xml"))
'define um dataview
Dim dv As DataView = RS.Tables(0).DefaultView
'Ordena o Dataview pela coluna Nome
dv.Sort = "Nome"
'Define as propriedades DataTextField e DataValueField
ddlProdutos.DataTextField = "Nome"
ddlProdutos.DataValueField = "ID"
'vincula o dataview ao dropdownlist ddlProdutos.DataSource = dv ddlProdutos.DataBind() End If End Sub |
Executando o projeto iremos obter o seguinte resultado:
Simples assim...
Pegue o projeto completo aqui : ASPNet_Dropdownlist.zip
"Ora, o fim do
mandamento é o amor de um coração puro, e de uma boa consciência, e de uma
fé não fingida."
1 Timóteo 1-5
Veja os
Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) : clique
e confira !
Quer migrar para o VB .NET ?
Quer aprender C# ??
Quer aprender os conceitos da Programação Orientada a objetos ? Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ? Quer aprender a criar aplicações Web Dinâmicas usando a ASP .NET MVC 5 ? |
Gostou ? Compartilhe no Facebook Compartilhe no Twitter
Referências:
Super DVD Vídeo Aulas - Vídeo Aula sobre VB .NET, ASP .NET e C#
Visual Studio - Dica de produtividade - Quick Launch - Macoratti.net
Visual Studio - Dica de produtividade - Nuget - Macoratti.net
ASP .NET MVC - Filtrando registros com Dropdownlist - Macoratti
ASP.NET : Exibindo tabelas e campos em um dropdownlist - Macoratti
ASP .NET - Exibindo imagens em um controle DropDownlist - Macoratti