Heroes

 Busca Online:
 

Seja bem vindo(a) Visitante, voc no est logado deseja logar
na comunidade ASPNETi.COM e participar de servios e promoes ? clique aqui.

CRIANDO MENU DINÂMICO COM C#.NET Passo 1



Data Publicação: 12/7/2006 21:49:01
Total de visualizações: 25202

comente
Diminuir o tamanho das letras Aumentar o tamanho das letras


 

Estarei criando primeiramente um menu para ser utilizado por um sistema.

É bem simples de desenvolver e usar. Este artigo é dividido em duas partes. Estarei usando um componente free chamado skyMenu. Esse componente é feito apenas para ler um arquivo xml e mostrar em uma página .aspx. Estarei explicando passo a passo de como fazer o menu dinâmico para ser utilizado em qualquer sistema.

 

Criei um projeto chamado Artigos. Adicionei uma pasta chamada menu e dentro adicionei um arquivo chamado menu.ascx. Veja a figura 1-1 e 1-2.

 

Referência: 1-1

 

Cliquei com o botão direito em cima do projeto, fui ao menu Add Folder, logo após Regular Folder, digitei o nome menu. Figura 1-2.

 

Referência: 1-2

 

Depois da pasta criada, cliquei com o botão direito em cima da pasta menu, logo apo Add New Item..., adicionando um arquivo user control. Não esqueça que um arquivo user control, tem a extensão .ascx. Veja na figura 1-3 o passo a passo.

 

 

Referência: 1-3

 

A figura 1-4 mostra apenas user control, colocando o nome menu.ascx.

 

 

Referência: 1-4

 

Depois de criado, tenho que adicionar uma dll de referência no projeto para usá-la. Essa dll estará disponível para download neste artigo. Clique com o botão direito em cima do projeto e clique Add Reference, e escolha a dll. Veja na figura 1-5.

 

 

Referência: 1-5

 

A figura de referência 1-6 apenas mostra adicionando a dll no projeto para ser usada mais tarde. Lembre-se que essa dll é grátis e pode ser adicionada no seu projeto apenas clicando no Add Reference...

 

 

Referência: 1-6

 

 

Adicione dentro da página menu.ascx o código abaixo:

 

<%@ Register TagPrefix="cc1" Namespace="skmMenu" Assembly="skmMenu" %>

<cc1:menu id="Menu1" runat="server" ItemPadding="5" ItemSpacing="0" zIndex="2000" Font-Size="8pt"

            MenuFadeDelay="1" Cursor="Pointer" SubMenuCssClass="menu" Layout="Horizontal" HighlightTopMenu="false">

            <SelectedMenuItemStyle CssClass="menuSelecionado"></SelectedMenuItemStyle>

</cc1:menu>

 

Estou utilizando o menu dentro da página menu.ascx. Note que esse menu funciona em qualquer brownser, tanto faz se é IE, Mozilla ou FireFox, funciona do mesmo jeito e do mesmo layout. Esse código acima foi inserido na parte HTML da página.

Antes de inserir o code-behing da página menu.ascx, terei que criar um arquivo xml, pode ser de qualquer nome, estarei colocando o nome do mesmo como menu.xml. Adicione da mesma forma como adicionou o menu.ascx o menu.xml.

 

 

Referência: 1-7

 

Veja a figura de referência 1-8, mostra o código xml do arquivo do menu.xml.

 

Referência: 1-9

 

Depois de criar o arquivo menu.xml definindo o menu, abri o arquivo menu.ascx, cliquei duas vezes na página normalmente e adicionei o código abaixo:

 

protected void preencheMenu()

{

this.Menu1.DataSource = "http://localhost/Artigos/menu/menu.xml";

this.Menu1.DataBind();

}

 

Criei apenas um método protected chamado preencheMenu(), adicionando o datasource do Menu1, indicando o xml criado anteriormente. Logo depois, mando preencher o objeto com o DataBind().

Cliquei com o botão direito em cima do projeto e adicionei mais uma página chamada default.aspx, por enquanto a mesma terá só um prefixo incluindo o arquivo menu.ascx. Funciona como se fosse include no ASP 3.0.

 

Veja o código abaixo junto com a explicação:

 

Primeiramente adicionei um Prefixo indicando o nome do arquivo ascx.

<%@ Register TagPrefix="Prefixo" TagName="menu" src="menu/menu.ascx" %>

 

Depois de colocar o endereço correto do arquivo, uso o mesmo mais abaixo, com o seguinte código:

 

Prefixo: Nome do tagPrefix,

Id= pode ser qualquer nome

Runat = sempre deve ser o server

Fecha a tag.

 

<Prefixo:menu id="menu" runat="server"></Prefixo:menu>

 

A figura de referência 1-10 mostra como o código ficará na página default.aspx.

 

Referência: 1-10

 

Coloquei como página inicial do projeto o arquivo default.aspx e iniciei a aplicação. Veja na figura de referência 1-11 o funcionamento do menu. O interessante é que o menu funciona em qualquer brownser sem problemas.

 

Referência: 1-11

 

Espero que tenham gostado.

Mauricio Junior

mauricio@ascompras.com

 

 

 

 



Total de visualizações: 25202
voltar   comente  subir


Comentários:

Comentado por: Carlos Junior - 24/7/2006 21:38:10
O melhor tutorial que eu já li...
Obrigado
Comentado por: Mauricio Junior - 24/7/2006 21:58:33
Por nada Carlos Junior, espero que continue gostando de nossos artigos, vídeos e forum junto a comunidade aspneti.com.

Abraços.
Comentado por: otilia - 6/6/2007 15:42:03
Aonde consigo a dll skyMenu?
Comentado por: Emmanuela Luz marques - 29/8/2007 14:30:44
Seria mais interessante se o skymenu ao qual se referiu e citou como um download possível estivesse realmente disponível. É uma pena que seu turorial se baseie em algo não fornecido e se torne, portanto, inaplicável.
Comentado por: KOF - 4/10/2007 16:10:07
Esta dificil de fazer isto em Asp.NET 3.0
Ainda mais por ser dificil achar para download do componente SkyMenu.dll
Comentado por: Luiz Antonio D.E. Franco - 19/3/2008 0:00:00
Aonde eu consigo a dll skyMenu para download a qual se refere esse artigo se pd me auxiliar desde já muito obrigado
Comentado por: Patricia - 28/3/2008 0:00:00
Oi Luiz
para fazer o download acesse

www.skmmenu.com



Comentado por: Jorge Dória - 4/6/2008 0:00:00
Só não gostei de uma coisa. Onde está o link para baixar o componente skyMenu?
Comentado por: aderitro - 2/7/2008 0:00:00
gostei do artigo porem poderia telo de modo para baixar igual o passo 2.
Sugestao os seus artigos e de todos os colegas poderia ter algum recurso de efetuar o dowloads pois quando imprimir nao sairia todos as propagandas....sei o comercial disto porem
Comentado por: aderitro - 2/7/2008 0:00:00
gostei do artigo porem poderia telo de modo para baixar igual o passo 2.
Sugestao os seus artigos e de todos os colegas poderia ter algum recurso de efetuar o dowloads pois quando imprimir nao sairia todos as propagandas....sei o comercial disto porem
Comentado por: Johni Carrilho Amafont - 8/9/2008 0:00:00
Achei legal o exemplo, já peguei o EXEMP-2. E ele já vem com a dll "skiMenu.dll", vou testar isto hj. mesmos. Mas desde já agradeço ao autor deste artigo, visto que deve ser de boa avalia. ParaBens !
Comentado por: Jair - 8/10/2008 0:00:00
Interessante o artigo, o problema é que todo mundo usa arquivo XML pra criar os menus dinâmicos e o infame do arquivo está sempre já definito, ou seja, ninguém ensina a gerar um arquivo a partir dos dados do menu lidos do banco. Aì fica difícil.


Comente (dê sua opinião): VOCÊ PRECISA LOGAR

Comentário:
Código Imagem:  (digite o código da imagem respeitando maiúsculo e minúsculo)

Favor digitar o código da imagem para cadastramento.

 

Outros Artigos do Autor

Formatando String de Vários Tipos
Convite de Lançamento do Windows 7
Tudo Sobre DataGrid - (ASP.NET e C#)
Reconhecimento do Google
Copa Microsoft de Talentos em Brasília
Desenvolvendo Sistema para Celular
Pagamento via celular
Vídeo: Série Atlas.NET - Parte III
Certificação - Segunda Chance
Novo Hotmail no ar
ASP.NET 2.0 - FileUpload
Prepare o Sql Server para o VS 2005
Public Interface
Registro Encontro .NET (Fotos)
Cookies
Windows Mobile Phone
Criando Alias no Pacote
Desenvolvendo com Atributos (Javascript) e StringBuilder
Visual SourceSafe - Série 3
Limpando Cache do Brownser
Ophone The Microsoft - Vídeo
As várias maneiras de mandar e-mail utilizando .NET
NDOC para versão framework 2.0
Conecte - Os games
Inserindo no Sql Server
Misturando dados
Table ExoPC Slate
Novo SO Palm, depois da venda...
Promoção Assinatura Grátis DevMedia e ASPNETi.COM
Desenvolvendo Aplicativos para TV Digital - Parte 3
Sistema de Login em ASP – Parte 10
Java J2EE – Segundo Passo
DataGrid Mobile
Sistema de Login em ASP – Parte II
Vírus / Spam Comentários
Sobre o Autor
  [sumir] [aparecer]
 
Mauricio Junior Maurício Júnior
Formado pela Faculdade Anhanguera, Especialista pela FGV (Fundação Getúlio Vargas), Pós-Graduação em Docência Superior e cursando Mestrado na UNB Engenharia Elétrica; .
Tenho 27 anos e possuo sete livros publicados pela editora Ciência Moderna no ano de 2009. Sou Certificado Microsoft MCP, MCAD e MVP, faço parte da comunidade ASPNETI.COM, onde publico artigos, vídeos, ebooks e livros Publico artigos, vídeos e podcast em outras comunidades. Trabalho como Analista de Sistemas / Desenvolvedor na empresa ATP S/A. Blog:  blog.mauriciojunior.orgSite pessoal  www.mauriciojunior.org

Informaes Online
Usurios Online: 370
Artigos:  750
Vdeos:  61
PodCast's:  44
Frum:  3128
Empregos:  1385
Usurios Cadastrados: 6163
Publicidade
LAYERDEV




Vdeos Publicados
 

Duas dicas de internet - Google RealTime e OpenDNS

Desconfie sempre da internet e emails

Microsoft Office online no Safari funcionando

Inovação Visual Studio .NET 2010 - parte 4

Office Live online

TAB TAB na ferramenta Visual Studio .NET

Apresentação do IMC - Sistema de Controle de Peso Mobile

Inovação Visual Studio .NET 2010 - parte 3

Inovação Visual Studio .NET 2010 - parte 1

Download de vídeos com o Safari

Criando Chart - Novo componente integrado com o Visual Studio.NET 2010

Serviços: SAC e SMS integrado

Café com TI - Info sobre o Visual Studio.NET 2010 - WebConfig

Café com TI - Info sobre o Visual Studio.NET 2010

Café com TI - Vírus se passando por Correios

Café com TI - Novo jeito de mandar e-mail com vírus

Café com TI - Formatando todo tipo de String

Resolvido erro do Banco do Brasil no browser

Erro no site do Banco do Brasil com o Safari

Duas dicas do Snow Leopard

Incompatibilidade no Snow Leopard

E-mail com vírus, veja os detalhes

Café com TI - Continuando a configuração de Themes no site

Café com Ti - Banner Rotativo

Café com TI - Evento Eco Brasília

Café com TI - Themes dentro do ASPNETi.COM

Café com TI - Trabalhando com o iCal no Macbook

Café com TI - Deixando o rodapé do seu site fixo

Café com TI - Windows 7 sendo utilizado sem qualquer incompatibilidade

Café com Ti - ASP.NET - Explicando o componente ModalDialogExtender do Ajax Toolkit

Café com TI - Indexação de URL com ASP.NET

Café com TI - Configurando Mail para sua conta no HotMail
Enquete ASPNETi.COM
 Os podcasts tem sido proveitoso pra você?

Favor logar para votar
 
Publicidade Vertical
NETITC