Criação de Menu

05/07/2012

Pessoal, como eu faço para criar menus no C#(WEB)? Não precisa ser sofisticado, com degrades e etc... Apenas um Menu suspenso que quando eu passo o Mouse por cima dele, ele já mostra os itens e subitens. Obrigado.

Tem mais uma. Na MasterPage que vem com o C# é possível alterar para criar subitens? Se for, posso aproveitar o código dela, pois é mais ou menos o que eu quero também.

Pjava

Respostas

05/07/2012

Flavix

Pessoal, como eu faço para criar menus no C#(WEB)? Não precisa ser sofisticado, com degrades e etc... Apenas um Menu suspenso que quando eu passo o Mouse por cima dele, ele já mostra os itens e subitens. Obrigado. Tem mais uma. Na MasterPage que vem com o C# é possível alterar para criar subitens? Se for, posso aproveitar o código dela, pois é mais ou menos o que eu quero também.


Bom dia!
Você pode usar o componente de Menu do proprio VS. Você pode colocálo na sua master page, sem problemas.
O carregamento pode ser no HTML (forma não muito usual) ou através de um banco de dados (a forma mais usual é essa).

Exemplo Pelo HTML:

<asp:Menu ID=NavigationMenu runat=server Orientation=Horizontal>
<Items>
<asp:MenuItem Text=Item 01>
<asp:MenuItem Text=Sub Item 01_01 NavigateUrl=~/SubItem01_01.aspx />
<asp:MenuItem Text=SubItem 01_02 NavigateUrl=~/SubItem01_02.asp />
</asp:MenuItem>
<asp:MenuItem Text=Item 02>
<asp:MenuItem Text=SubItem 02_01 NavigateUrl=~/SubItem02_01.asp />
</asp:MenuItem>
</Items>
</asp:Menu>

Exemplo de Menu carregado pelo banco de dados:
Página Html:
<asp:Menu ID=NavigationMenu runat=server Orientation=Horizontal />

Método de carregamento do Menu:
protected void carregarMenu(DataTable dt)
{
foreach (DataRow dr in dt.Rows)
{
var MenuItem = new MenuItem
{
NavigateUrl = dr[CAMINHO_PAGINA].ToString(),
Text = dr[TEXTO_MENU].ToString()
};
NavigationMenu.Items.Add(MenuItem);
}
}

Claro que isso está super resumido, é só para clarear um pouco a idéia de como você pode fazer e criar seu proprio método de carregamento do menu.
Esse exemplo tem apenas um nível de menu, para inserir mais você deve melhorar o método.
E lembrando também que não postei a query para criação do DataTable usado, pois acho que você tenha esse conhecimento. Mas se não souber, sem problemas posta ai que passo um exemplo mais completo.

Abraços.
Responder Citar

05/07/2012

Felipe Eleoterio

Na aba Navigation>menu;
editMenuItens>addroot iten=adiciona no menu
editMenuItens>addchildIten=adiciona sub menus

navigatioUrl=link
tex=texto q vai aparecer
Responder Citar