Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

valdirlscosta

Mudar texto do Menu

Recommended Posts

bom dia, amigos, estou precisando muito mudar o texto de um menu feito em asp.net, ele é assim Line 38: <asp:MenuItem Value=Teste> Line 39: <asp:MenuItem Value="TESTE">kkkk</asp:MenuItem> Line 40: </asp:MenuItem>Mas está dando erro.Obrigado a todos que ajudarem !!!Valdir

Compartilhar este post


Link para o post
Compartilhar em outros sites

<asp:MenuItem Value="Teste1"> TESTE 1</asp:MenuItem> <asp:MenuItem Value="TESTE2">kkkk</asp:MenuItem> TIPOW... o erro tava na parte de abrir e fechar as tags....flw!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá meu amigo,peguei o que você disse aqui, e coloquei, mas está dado o seguinte erro:Parser Error Message: Literal content ('TESTE 1') is not allowed within a 'System.Web.UI.WebControls.MenuItemCollection'vai código:<asp:Menu ID="Menu1" runat="server" Height=20 Width="150px"> <Items> <asp:MenuItem Value="Teste1"> TESTE 1</asp:MenuItem> </Items></asp:Menu> AbraçosValdir

<asp:MenuItem Value="Teste1"> TESTE 1</asp:MenuItem> <asp:MenuItem Value="TESTE2">kkkk</asp:MenuItem> TIPOW... o erro tava na parte de abrir e fechar as tags....flw!

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu fiz assim e funcionou <asp:Menu ID="Menu1" runat="server"> <Items> <asp:MenuItem Text="TESTE" Value="TESTE"></asp:MenuItem> </Items> </asp:Menu>tipw... no menu vai mostrar escrito TESTE... que está em text!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, correto, mas o que preciso é no lugar deste TESTE colocar uma variável ou um campo que vem do banco de dados.AtValdir

eu fiz assim e funcionou <asp:Menu ID="Menu1" runat="server"> <Items> <asp:MenuItem Text="TESTE" Value="TESTE"></asp:MenuItem> </Items> </asp:Menu>tipw... no menu vai mostrar escrito TESTE... que está em text!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Infelizmente acho que estou fazendo algo errado:<asp:Menu ID="Menu1" runat="server"> <Items> <asp:MenuItem text='<%Reader("XPai")%>'/></asp:MenuItem> </Items></asp:Menu>e continua com erro...Parser Error Message: Literal content ('</asp:MenuItem>') is not allowed within a 'System.Web.UI.WebControls.MenuItemCollection'.Ate Obrigado pela ajuda !!!Valdir

Agora você falou a minha lingua....isso aqui resolve!text='<%eval("Campo")%>' />

Compartilhar este post


Link para o post
Compartilhar em outros sites

A mais indicado nesta sua situação é você fazer a busca no banco e criar todo o arquivo XML na execução mesmo, eu tenho em casa um exemplo de como fazer isto, amanhã post aqui.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom vamos para o exemplo que tenho aqui para pegar os valores no banco e criar o menu. Neste caso tenho um menu de produtos, onde tenho:

 

Produtos

Categoria

Sub Categoria

Produtos.

 

1 - Criando o Menu

=====================================================================

FUNÇÃO PARA CRIAR O ITEM MENU, SEM NENHUM ITEM

ESTA FUNÇÃO APENAS CRIA O COMPONENTE MENU E CONFIGURA OS PARAMETROS DO MENU, COMO COR, TIPO DE FONT, TAMANHO DE FONTE

=====================================================================

Function FcCriaMenu() As Menu

NovoMenu = New Menu

With NovoMenu

.ID = "MenuProdutos"

.DisappearAfter = 600

.Font.Name = "Verdana"

.Font.Size = 8

.ForeColor = Drawing.Color.White

.Orientation = Orientation.Horizontal

.StaticEnableDefaultPopOutImage = "False"

.StaticMenuItemStyle.HorizontalPadding = 15

.DynamicMenuStyle.CssClass = "MenuProduto"

.DynamicMenuStyle.BackColor = Drawing.Color.DarkGray

.DynamicMenuItemStyle.VerticalPadding = 3

.DynamicMenuItemStyle.CssClass = "MenuItemProduto"

.DynamicMenuItemStyle.ForeColor = Drawing.Color.Black

.StaticSubMenuIndent = 10

.DynamicEnableDefaultPopOutImage = "true"

.DynamicVerticalOffset = 3

.DynamicHorizontalOffset = 2

.ScrollDownText = "Scroll Down"

.DynamicHoverStyle.CssClass = "MenuItemHoverProduto"

End With

Return NovoMenu

End Function

 

2 - Buscando as informações no banco e gerando os compontes do SubMenu1 (Categorias) ,SubMenu2 (SubCategorias) e SubMenu3 (Produtos)

 

Function FcBuscaBanco(ByVal XmlMenu As Menu) As Menu

'==================================

'Criando o Primeiro Item do Menu, nó principal

'==================================

Dim MiPrincipal As MenuItem = FcCriaItemMenu("Product Catalogue", "Brazilliant Products")

'=================================

'buscando as categorias

'=================================

ObjBase.FcComando("Select codigo, nome, descricao from categoria order by nome")

ObjDsCategoria = ObjBase.FcConsultar(1, "categoria")

'=================================

'Adicionando o primeiro sub item do menu principal que no caso é Product Cataloque

'=================================

MiPrincipal = FcCriaItemMenu("Product Catalogue", "Brazilliant Products")

Dim StrUrlSubCategoria As New System.Text.StringBuilder

Dim StrUrlCategoria As New System.Text.StringBuilder

'=================================

'Instanciando um novo MenuItem

'=================================

Dim MiCategoria As MenuItem

'=================================

'Adicionando ao MenuItem um item no caso Products

'=================================

MiCategoria = FcCriaItemMenu("Products", "About Products", "produtos.aspx")

'=================================

'Adicionando um item Filho ao menu Principal

'=================================

MiPrincipal.ChildItems.Add(MiCategoria)

'=================================

'Aqui faço uma estrutura de repetição para poder inserir todos os SubItens do menu Categoria

'=================================

For Each ObjDrCategoria In ObjDsCategoria.Tables("categoria").Rows

StrUrlCategoria.Append("produtos.aspx")

StrUrlCategoria.Append("?c=")

StrUrlCategoria.Append(ObjDrCategoria(0).ToString)

'=================================

'Adicionando os itens ao SubMenu Categorias

'=================================

MiCategoria = FcCriaItemMenu(ObjDrCategoria(1), ObjDrCategoria(2), StrUrlCategoria.ToString)

'=================================

'buscando as subcategorias

'=================================

ObjBase.FcComando("Select codigo, nome, categoria from sub_categoria where categoria=?")

ObjBase.FcParametro("?", ObjDrCategoria(0))

ObjDsSubCategoria = ObjBase.FcConsultar(1, "subcategoria")

'=================================

'Aqui faço uma estrutura de repetição para inserir os SubItens do Menu Categoria, ou seja as subcategorias

'=================================

For Each ObjDrSubCategoria In ObjDsSubCategoria.Tables("subcategoria").Rows

Dim MiSubCategoria As MenuItem

StrUrlSubCategoria.Append("produtos.aspx")

StrUrlSubCategoria.Append("?c=")

StrUrlSubCategoria.Append(ObjDrSubCategoria(2))

StrUrlSubCategoria.Append("&s=")

StrUrlSubCategoria.Append(ObjDrSubCategoria(0))

'=================================

'Todas as voltas do looping insiro um Item (SubCategoria) no Menu Categoria.

'=================================

MiSubCategoria = FcCriaItemMenu(ObjDrSubCategoria(1), ObjDrSubCategoria(1), StrUrlSubCategoria.ToString)

MiCategoria.ChildItems.Add(MiSubCategoria)

'=================================

'Aqui eu limpo a estrutura de StringBuilder para poder receber campos limpos

'=================================

StrUrlSubCategoria.Remove(0, StrUrlSubCategoria.Length)

Next

'=================================

'Adiciono o Item categoria, com os subitens (subcategorias) ao item principal

'=================================

MiPrincipal.ChildItems.Add(MiCategoria)

StrUrlCategoria.Remove(0, StrUrlCategoria.Length)

Next

'=================================

'Adiciono o item principal ao elemento menu

'=================================

NovoMenu.Items.Add(MiPrincipal)

Return NovoMenu

End Function

 

3 - Função para adicionar itens ao menu

Function FcCriaItemMenu(ByVal StrTexto As String, ByVal StrLegenda As String, Optional ByVal StrUrl As String = "") As MenuItem

'=================================

'Instancio um novo Objeto MenuItem

'=================================

Dim ItemMenu As New MenuItem()

With ItemMenu

.Text = StrTexto 'Nome que aparecerá no Menu (Item do menu)

.NavigateUrl = StrUrl 'URL para ser lincado

.ToolTip = StrLegenda 'Legenda (Alt)

End With

Return ItemMenu

End Function

 

Bom espero que esteja bem explicado, caso contrário pode chamar ai.

Compartilhar este post


Link para o post
Compartilhar em outros sites

kra isso aqui é show... muito obrigado mesmo, estou terminando de testar e qualquer coisa coloco aqui..

 

 

 

Obrigadão

 

 

Valdir

 

 

Bom vamos para o exemplo que tenho aqui para pegar os valores no banco e criar o menu. Neste caso tenho um menu de produtos, onde tenho:

 

Produtos

Categoria

Sub Categoria

Produtos.

 

1 - Criando o Menu

=====================================================================

FUNÇÃO PARA CRIAR O ITEM MENU, SEM NENHUM ITEM

ESTA FUNÇÃO APENAS CRIA O COMPONENTE MENU E CONFIGURA OS PARAMETROS DO MENU, COMO COR, TIPO DE FONT, TAMANHO DE FONTE

=====================================================================

Function FcCriaMenu() As Menu

NovoMenu = New Menu

With NovoMenu

.ID = "MenuProdutos"

.DisappearAfter = 600

.Font.Name = "Verdana"

.Font.Size = 8

.ForeColor = Drawing.Color.White

.Orientation = Orientation.Horizontal

.StaticEnableDefaultPopOutImage = "False"

.StaticMenuItemStyle.HorizontalPadding = 15

.DynamicMenuStyle.CssClass = "MenuProduto"

.DynamicMenuStyle.BackColor = Drawing.Color.DarkGray

.DynamicMenuItemStyle.VerticalPadding = 3

.DynamicMenuItemStyle.CssClass = "MenuItemProduto"

.DynamicMenuItemStyle.ForeColor = Drawing.Color.Black

.StaticSubMenuIndent = 10

.DynamicEnableDefaultPopOutImage = "true"

.DynamicVerticalOffset = 3

.DynamicHorizontalOffset = 2

.ScrollDownText = "Scroll Down"

.DynamicHoverStyle.CssClass = "MenuItemHoverProduto"

End With

Return NovoMenu

End Function

 

2 - Buscando as informações no banco e gerando os compontes do SubMenu1 (Categorias) ,SubMenu2 (SubCategorias) e SubMenu3 (Produtos)

 

Function FcBuscaBanco(ByVal XmlMenu As Menu) As Menu

'==================================

'Criando o Primeiro Item do Menu, nó principal

'==================================

Dim MiPrincipal As MenuItem = FcCriaItemMenu("Product Catalogue", "Brazilliant Products")

'=================================

'buscando as categorias

'=================================

ObjBase.FcComando("Select codigo, nome, descricao from categoria order by nome")

ObjDsCategoria = ObjBase.FcConsultar(1, "categoria")

'=================================

'Adicionando o primeiro sub item do menu principal que no caso é Product Cataloque

'=================================

MiPrincipal = FcCriaItemMenu("Product Catalogue", "Brazilliant Products")

Dim StrUrlSubCategoria As New System.Text.StringBuilder

Dim StrUrlCategoria As New System.Text.StringBuilder

'=================================

'Instanciando um novo MenuItem

'=================================

Dim MiCategoria As MenuItem

'=================================

'Adicionando ao MenuItem um item no caso Products

'=================================

MiCategoria = FcCriaItemMenu("Products", "About Products", "produtos.aspx")

'=================================

'Adicionando um item Filho ao menu Principal

'=================================

MiPrincipal.ChildItems.Add(MiCategoria)

'=================================

'Aqui faço uma estrutura de repetição para poder inserir todos os SubItens do menu Categoria

'=================================

For Each ObjDrCategoria In ObjDsCategoria.Tables("categoria").Rows

StrUrlCategoria.Append("produtos.aspx")

StrUrlCategoria.Append("?c=")

StrUrlCategoria.Append(ObjDrCategoria(0).ToString)

'=================================

'Adicionando os itens ao SubMenu Categorias

'=================================

MiCategoria = FcCriaItemMenu(ObjDrCategoria(1), ObjDrCategoria(2), StrUrlCategoria.ToString)

'=================================

'buscando as subcategorias

'=================================

ObjBase.FcComando("Select codigo, nome, categoria from sub_categoria where categoria=?")

ObjBase.FcParametro("?", ObjDrCategoria(0))

ObjDsSubCategoria = ObjBase.FcConsultar(1, "subcategoria")

'=================================

'Aqui faço uma estrutura de repetição para inserir os SubItens do Menu Categoria, ou seja as subcategorias

'=================================

For Each ObjDrSubCategoria In ObjDsSubCategoria.Tables("subcategoria").Rows

Dim MiSubCategoria As MenuItem

StrUrlSubCategoria.Append("produtos.aspx")

StrUrlSubCategoria.Append("?c=")

StrUrlSubCategoria.Append(ObjDrSubCategoria(2))

StrUrlSubCategoria.Append("&s=")

StrUrlSubCategoria.Append(ObjDrSubCategoria(0))

'=================================

'Todas as voltas do looping insiro um Item (SubCategoria) no Menu Categoria.

'=================================

MiSubCategoria = FcCriaItemMenu(ObjDrSubCategoria(1), ObjDrSubCategoria(1), StrUrlSubCategoria.ToString)

MiCategoria.ChildItems.Add(MiSubCategoria)

'=================================

'Aqui eu limpo a estrutura de StringBuilder para poder receber campos limpos

'=================================

StrUrlSubCategoria.Remove(0, StrUrlSubCategoria.Length)

Next

'=================================

'Adiciono o Item categoria, com os subitens (subcategorias) ao item principal

'=================================

MiPrincipal.ChildItems.Add(MiCategoria)

StrUrlCategoria.Remove(0, StrUrlCategoria.Length)

Next

'=================================

'Adiciono o item principal ao elemento menu

'=================================

NovoMenu.Items.Add(MiPrincipal)

Return NovoMenu

End Function

 

3 - Função para adicionar itens ao menu

Function FcCriaItemMenu(ByVal StrTexto As String, ByVal StrLegenda As String, Optional ByVal StrUrl As String = "") As MenuItem

'=================================

'Instancio um novo Objeto MenuItem

'=================================

Dim ItemMenu As New MenuItem()

With ItemMenu

.Text = StrTexto 'Nome que aparecerá no Menu (Item do menu)

.NavigateUrl = StrUrl 'URL para ser lincado

.ToolTip = StrLegenda 'Legenda (Alt)

End With

Return ItemMenu

End Function

 

Bom espero que esteja bem explicado, caso contrário pode chamar ai.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi meu amigo, obrigado pela ajuda, e desculpe a ignorancia...

 

 

mas estou tendo dificuldades no codigo...

 

 

por favor me diga, na compilação está dizendo que o item "ObjBase" não está declarado, que tipo de declaração posso colocar para este ?

 

 

 

Obrigado novamente.

 

 

 

 

kra isso aqui é show... muito obrigado mesmo, estou terminando de testar e qualquer coisa coloco aqui..

 

 

 

Obrigadão

 

 

Valdir

 

 

 

Bom vamos para o exemplo que tenho aqui para pegar os valores no banco e criar o menu. Neste caso tenho um menu de produtos, onde tenho:

 

Produtos

Categoria

Sub Categoria

Produtos.

 

1 - Criando o Menu

=====================================================================

FUNÇÃO PARA CRIAR O ITEM MENU, SEM NENHUM ITEM

ESTA FUNÇÃO APENAS CRIA O COMPONENTE MENU E CONFIGURA OS PARAMETROS DO MENU, COMO COR, TIPO DE FONT, TAMANHO DE FONTE

=====================================================================

Function FcCriaMenu() As Menu

NovoMenu = New Menu

With NovoMenu

.ID = "MenuProdutos"

.DisappearAfter = 600

.Font.Name = "Verdana"

.Font.Size = 8

.ForeColor = Drawing.Color.White

.Orientation = Orientation.Horizontal

.StaticEnableDefaultPopOutImage = "False"

.StaticMenuItemStyle.HorizontalPadding = 15

.DynamicMenuStyle.CssClass = "MenuProduto"

.DynamicMenuStyle.BackColor = Drawing.Color.DarkGray

.DynamicMenuItemStyle.VerticalPadding = 3

.DynamicMenuItemStyle.CssClass = "MenuItemProduto"

.DynamicMenuItemStyle.ForeColor = Drawing.Color.Black

.StaticSubMenuIndent = 10

.DynamicEnableDefaultPopOutImage = "true"

.DynamicVerticalOffset = 3

.DynamicHorizontalOffset = 2

.ScrollDownText = "Scroll Down"

.DynamicHoverStyle.CssClass = "MenuItemHoverProduto"

End With

Return NovoMenu

End Function

 

2 - Buscando as informações no banco e gerando os compontes do SubMenu1 (Categorias) ,SubMenu2 (SubCategorias) e SubMenu3 (Produtos)

 

Function FcBuscaBanco(ByVal XmlMenu As Menu) As Menu

'==================================

'Criando o Primeiro Item do Menu, nó principal

'==================================

Dim MiPrincipal As MenuItem = FcCriaItemMenu("Product Catalogue", "Brazilliant Products")

'=================================

'buscando as categorias

'=================================

ObjBase.FcComando("Select codigo, nome, descricao from categoria order by nome")

ObjDsCategoria = ObjBase.FcConsultar(1, "categoria")

'=================================

'Adicionando o primeiro sub item do menu principal que no caso é Product Cataloque

'=================================

MiPrincipal = FcCriaItemMenu("Product Catalogue", "Brazilliant Products")

Dim StrUrlSubCategoria As New System.Text.StringBuilder

Dim StrUrlCategoria As New System.Text.StringBuilder

'=================================

'Instanciando um novo MenuItem

'=================================

Dim MiCategoria As MenuItem

'=================================

'Adicionando ao MenuItem um item no caso Products

'=================================

MiCategoria = FcCriaItemMenu("Products", "About Products", "produtos.aspx")

'=================================

'Adicionando um item Filho ao menu Principal

'=================================

MiPrincipal.ChildItems.Add(MiCategoria)

'=================================

'Aqui faço uma estrutura de repetição para poder inserir todos os SubItens do menu Categoria

'=================================

For Each ObjDrCategoria In ObjDsCategoria.Tables("categoria").Rows

StrUrlCategoria.Append("produtos.aspx")

StrUrlCategoria.Append("?c=")

StrUrlCategoria.Append(ObjDrCategoria(0).ToString)

'=================================

'Adicionando os itens ao SubMenu Categorias

'=================================

MiCategoria = FcCriaItemMenu(ObjDrCategoria(1), ObjDrCategoria(2), StrUrlCategoria.ToString)

'=================================

'buscando as subcategorias

'=================================

ObjBase.FcComando("Select codigo, nome, categoria from sub_categoria where categoria=?")

ObjBase.FcParametro("?", ObjDrCategoria(0))

ObjDsSubCategoria = ObjBase.FcConsultar(1, "subcategoria")

'=================================

'Aqui faço uma estrutura de repetição para inserir os SubItens do Menu Categoria, ou seja as subcategorias

'=================================

For Each ObjDrSubCategoria In ObjDsSubCategoria.Tables("subcategoria").Rows

Dim MiSubCategoria As MenuItem

StrUrlSubCategoria.Append("produtos.aspx")

StrUrlSubCategoria.Append("?c=")

StrUrlSubCategoria.Append(ObjDrSubCategoria(2))

StrUrlSubCategoria.Append("&s=")

StrUrlSubCategoria.Append(ObjDrSubCategoria(0))

'=================================

'Todas as voltas do looping insiro um Item (SubCategoria) no Menu Categoria.

'=================================

MiSubCategoria = FcCriaItemMenu(ObjDrSubCategoria(1), ObjDrSubCategoria(1), StrUrlSubCategoria.ToString)

MiCategoria.ChildItems.Add(MiSubCategoria)

'=================================

'Aqui eu limpo a estrutura de StringBuilder para poder receber campos limpos

'=================================

StrUrlSubCategoria.Remove(0, StrUrlSubCategoria.Length)

Next

'=================================

'Adiciono o Item categoria, com os subitens (subcategorias) ao item principal

'=================================

MiPrincipal.ChildItems.Add(MiCategoria)

StrUrlCategoria.Remove(0, StrUrlCategoria.Length)

Next

'=================================

'Adiciono o item principal ao elemento menu

'=================================

NovoMenu.Items.Add(MiPrincipal)

Return NovoMenu

End Function

 

3 - Função para adicionar itens ao menu

Function FcCriaItemMenu(ByVal StrTexto As String, ByVal StrLegenda As String, Optional ByVal StrUrl As String = "") As MenuItem

'=================================

'Instancio um novo Objeto MenuItem

'=================================

Dim ItemMenu As New MenuItem()

With ItemMenu

.Text = StrTexto 'Nome que aparecerá no Menu (Item do menu)

.NavigateUrl = StrUrl 'URL para ser lincado

.ToolTip = StrLegenda 'Legenda (Alt)

End With

Return ItemMenu

End Function

 

Bom espero que esteja bem explicado, caso contrário pode chamar ai.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom no caso este ObjBase é uma instancia de uma classe que criei para acessar a base de dados.

 

Oi meu amigo, obrigado pela ajuda, e desculpe a ignorancia...

 

 

mas estou tendo dificuldades no codigo...

 

 

por favor me diga, na compilação está dizendo que o item "ObjBase" não está declarado, que tipo de declaração posso colocar para este ?

 

 

 

Obrigado novamente.

 

 

 

 

 

kra isso aqui é show... muito obrigado mesmo, estou terminando de testar e qualquer coisa coloco aqui..

 

 

 

Obrigadão

 

 

Valdir

 

 

 

Bom vamos para o exemplo que tenho aqui para pegar os valores no banco e criar o menu. Neste caso tenho um menu de produtos, onde tenho:

 

Produtos

Categoria

Sub Categoria

Produtos.

 

1 - Criando o Menu

=====================================================================

FUNÇÃO PARA CRIAR O ITEM MENU, SEM NENHUM ITEM

ESTA FUNÇÃO APENAS CRIA O COMPONENTE MENU E CONFIGURA OS PARAMETROS DO MENU, COMO COR, TIPO DE FONT, TAMANHO DE FONTE

=====================================================================

Function FcCriaMenu() As Menu

NovoMenu = New Menu

With NovoMenu

.ID = "MenuProdutos"

.DisappearAfter = 600

.Font.Name = "Verdana"

.Font.Size = 8

.ForeColor = Drawing.Color.White

.Orientation = Orientation.Horizontal

.StaticEnableDefaultPopOutImage = "False"

.StaticMenuItemStyle.HorizontalPadding = 15

.DynamicMenuStyle.CssClass = "MenuProduto"

.DynamicMenuStyle.BackColor = Drawing.Color.DarkGray

.DynamicMenuItemStyle.VerticalPadding = 3

.DynamicMenuItemStyle.CssClass = "MenuItemProduto"

.DynamicMenuItemStyle.ForeColor = Drawing.Color.Black

.StaticSubMenuIndent = 10

.DynamicEnableDefaultPopOutImage = "true"

.DynamicVerticalOffset = 3

.DynamicHorizontalOffset = 2

.ScrollDownText = "Scroll Down"

.DynamicHoverStyle.CssClass = "MenuItemHoverProduto"

End With

Return NovoMenu

End Function

 

2 - Buscando as informações no banco e gerando os compontes do SubMenu1 (Categorias) ,SubMenu2 (SubCategorias) e SubMenu3 (Produtos)

 

Function FcBuscaBanco(ByVal XmlMenu As Menu) As Menu

'==================================

'Criando o Primeiro Item do Menu, nó principal

'==================================

Dim MiPrincipal As MenuItem = FcCriaItemMenu("Product Catalogue", "Brazilliant Products")

'=================================

'buscando as categorias

'=================================

ObjBase.FcComando("Select codigo, nome, descricao from categoria order by nome")

ObjDsCategoria = ObjBase.FcConsultar(1, "categoria")

'=================================

'Adicionando o primeiro sub item do menu principal que no caso é Product Cataloque

'=================================

MiPrincipal = FcCriaItemMenu("Product Catalogue", "Brazilliant Products")

Dim StrUrlSubCategoria As New System.Text.StringBuilder

Dim StrUrlCategoria As New System.Text.StringBuilder

'=================================

'Instanciando um novo MenuItem

'=================================

Dim MiCategoria As MenuItem

'=================================

'Adicionando ao MenuItem um item no caso Products

'=================================

MiCategoria = FcCriaItemMenu("Products", "About Products", "produtos.aspx")

'=================================

'Adicionando um item Filho ao menu Principal

'=================================

MiPrincipal.ChildItems.Add(MiCategoria)

'=================================

'Aqui faço uma estrutura de repetição para poder inserir todos os SubItens do menu Categoria

'=================================

For Each ObjDrCategoria In ObjDsCategoria.Tables("categoria").Rows

StrUrlCategoria.Append("produtos.aspx")

StrUrlCategoria.Append("?c=")

StrUrlCategoria.Append(ObjDrCategoria(0).ToString)

'=================================

'Adicionando os itens ao SubMenu Categorias

'=================================

MiCategoria = FcCriaItemMenu(ObjDrCategoria(1), ObjDrCategoria(2), StrUrlCategoria.ToString)

'=================================

'buscando as subcategorias

'=================================

ObjBase.FcComando("Select codigo, nome, categoria from sub_categoria where categoria=?")

ObjBase.FcParametro("?", ObjDrCategoria(0))

ObjDsSubCategoria = ObjBase.FcConsultar(1, "subcategoria")

'=================================

'Aqui faço uma estrutura de repetição para inserir os SubItens do Menu Categoria, ou seja as subcategorias

'=================================

For Each ObjDrSubCategoria In ObjDsSubCategoria.Tables("subcategoria").Rows

Dim MiSubCategoria As MenuItem

StrUrlSubCategoria.Append("produtos.aspx")

StrUrlSubCategoria.Append("?c=")

StrUrlSubCategoria.Append(ObjDrSubCategoria(2))

StrUrlSubCategoria.Append("&s=")

StrUrlSubCategoria.Append(ObjDrSubCategoria(0))

'=================================

'Todas as voltas do looping insiro um Item (SubCategoria) no Menu Categoria.

'=================================

MiSubCategoria = FcCriaItemMenu(ObjDrSubCategoria(1), ObjDrSubCategoria(1), StrUrlSubCategoria.ToString)

MiCategoria.ChildItems.Add(MiSubCategoria)

'=================================

'Aqui eu limpo a estrutura de StringBuilder para poder receber campos limpos

'=================================

StrUrlSubCategoria.Remove(0, StrUrlSubCategoria.Length)

Next

'=================================

'Adiciono o Item categoria, com os subitens (subcategorias) ao item principal

'=================================

MiPrincipal.ChildItems.Add(MiCategoria)

StrUrlCategoria.Remove(0, StrUrlCategoria.Length)

Next

'=================================

'Adiciono o item principal ao elemento menu

'=================================

NovoMenu.Items.Add(MiPrincipal)

Return NovoMenu

End Function

 

3 - Função para adicionar itens ao menu

Function FcCriaItemMenu(ByVal StrTexto As String, ByVal StrLegenda As String, Optional ByVal StrUrl As String = "") As MenuItem

'=================================

'Instancio um novo Objeto MenuItem

'=================================

Dim ItemMenu As New MenuItem()

With ItemMenu

.Text = StrTexto 'Nome que aparecerá no Menu (Item do menu)

.NavigateUrl = StrUrl 'URL para ser lincado

.ToolTip = StrLegenda 'Legenda (Alt)

End With

Return ItemMenu

End Function

 

Bom espero que esteja bem explicado, caso contrário pode chamar ai.

Bom cara eu fiz um tutorial completo no endereço abaixo

 

http://gcarvalho.livejournal.com/

 

Bom no caso este ObjBase é uma instancia de uma classe que criei para acessar a base de dados.

 

 

Oi meu amigo, obrigado pela ajuda, e desculpe a ignorancia...

 

 

mas estou tendo dificuldades no codigo...

 

 

por favor me diga, na compilação está dizendo que o item "ObjBase" não está declarado, que tipo de declaração posso colocar para este ?

 

 

 

Obrigado novamente.

 

 

 

 

 

kra isso aqui é show... muito obrigado mesmo, estou terminando de testar e qualquer coisa coloco aqui..

 

 

 

Obrigadão

 

 

Valdir

 

 

 

Bom vamos para o exemplo que tenho aqui para pegar os valores no banco e criar o menu. Neste caso tenho um menu de produtos, onde tenho:

 

Produtos

Categoria

Sub Categoria

Produtos.

 

1 - Criando o Menu

=====================================================================

FUNÇÃO PARA CRIAR O ITEM MENU, SEM NENHUM ITEM

ESTA FUNÇÃO APENAS CRIA O COMPONENTE MENU E CONFIGURA OS PARAMETROS DO MENU, COMO COR, TIPO DE FONT, TAMANHO DE FONTE

=====================================================================

Function FcCriaMenu() As Menu

NovoMenu = New Menu

With NovoMenu

.ID = "MenuProdutos"

.DisappearAfter = 600

.Font.Name = "Verdana"

.Font.Size = 8

.ForeColor = Drawing.Color.White

.Orientation = Orientation.Horizontal

.StaticEnableDefaultPopOutImage = "False"

.StaticMenuItemStyle.HorizontalPadding = 15

.DynamicMenuStyle.CssClass = "MenuProduto"

.DynamicMenuStyle.BackColor = Drawing.Color.DarkGray

.DynamicMenuItemStyle.VerticalPadding = 3

.DynamicMenuItemStyle.CssClass = "MenuItemProduto"

.DynamicMenuItemStyle.ForeColor = Drawing.Color.Black

.StaticSubMenuIndent = 10

.DynamicEnableDefaultPopOutImage = "true"

.DynamicVerticalOffset = 3

.DynamicHorizontalOffset = 2

.ScrollDownText = "Scroll Down"

.DynamicHoverStyle.CssClass = "MenuItemHoverProduto"

End With

Return NovoMenu

End Function

 

2 - Buscando as informações no banco e gerando os compontes do SubMenu1 (Categorias) ,SubMenu2 (SubCategorias) e SubMenu3 (Produtos)

 

Function FcBuscaBanco(ByVal XmlMenu As Menu) As Menu

'==================================

'Criando o Primeiro Item do Menu, nó principal

'==================================

Dim MiPrincipal As MenuItem = FcCriaItemMenu("Product Catalogue", "Brazilliant Products")

'=================================

'buscando as categorias

'=================================

ObjBase.FcComando("Select codigo, nome, descricao from categoria order by nome")

ObjDsCategoria = ObjBase.FcConsultar(1, "categoria")

'=================================

'Adicionando o primeiro sub item do menu principal que no caso é Product Cataloque

'=================================

MiPrincipal = FcCriaItemMenu("Product Catalogue", "Brazilliant Products")

Dim StrUrlSubCategoria As New System.Text.StringBuilder

Dim StrUrlCategoria As New System.Text.StringBuilder

'=================================

'Instanciando um novo MenuItem

'=================================

Dim MiCategoria As MenuItem

'=================================

'Adicionando ao MenuItem um item no caso Products

'=================================

MiCategoria = FcCriaItemMenu("Products", "About Products", "produtos.aspx")

'=================================

'Adicionando um item Filho ao menu Principal

'=================================

MiPrincipal.ChildItems.Add(MiCategoria)

'=================================

'Aqui faço uma estrutura de repetição para poder inserir todos os SubItens do menu Categoria

'=================================

For Each ObjDrCategoria In ObjDsCategoria.Tables("categoria").Rows

StrUrlCategoria.Append("produtos.aspx")

StrUrlCategoria.Append("?c=")

StrUrlCategoria.Append(ObjDrCategoria(0).ToString)

'=================================

'Adicionando os itens ao SubMenu Categorias

'=================================

MiCategoria = FcCriaItemMenu(ObjDrCategoria(1), ObjDrCategoria(2), StrUrlCategoria.ToString)

'=================================

'buscando as subcategorias

'=================================

ObjBase.FcComando("Select codigo, nome, categoria from sub_categoria where categoria=?")

ObjBase.FcParametro("?", ObjDrCategoria(0))

ObjDsSubCategoria = ObjBase.FcConsultar(1, "subcategoria")

'=================================

'Aqui faço uma estrutura de repetição para inserir os SubItens do Menu Categoria, ou seja as subcategorias

'=================================

For Each ObjDrSubCategoria In ObjDsSubCategoria.Tables("subcategoria").Rows

Dim MiSubCategoria As MenuItem

StrUrlSubCategoria.Append("produtos.aspx")

StrUrlSubCategoria.Append("?c=")

StrUrlSubCategoria.Append(ObjDrSubCategoria(2))

StrUrlSubCategoria.Append("&s=")

StrUrlSubCategoria.Append(ObjDrSubCategoria(0))

'=================================

'Todas as voltas do looping insiro um Item (SubCategoria) no Menu Categoria.

'=================================

MiSubCategoria = FcCriaItemMenu(ObjDrSubCategoria(1), ObjDrSubCategoria(1), StrUrlSubCategoria.ToString)

MiCategoria.ChildItems.Add(MiSubCategoria)

'=================================

'Aqui eu limpo a estrutura de StringBuilder para poder receber campos limpos

'=================================

StrUrlSubCategoria.Remove(0, StrUrlSubCategoria.Length)

Next

'=================================

'Adiciono o Item categoria, com os subitens (subcategorias) ao item principal

'=================================

MiPrincipal.ChildItems.Add(MiCategoria)

StrUrlCategoria.Remove(0, StrUrlCategoria.Length)

Next

'=================================

'Adiciono o item principal ao elemento menu

'=================================

NovoMenu.Items.Add(MiPrincipal)

Return NovoMenu

End Function

 

3 - Função para adicionar itens ao menu

Function FcCriaItemMenu(ByVal StrTexto As String, ByVal StrLegenda As String, Optional ByVal StrUrl As String = "") As MenuItem

'=================================

'Instancio um novo Objeto MenuItem

'=================================

Dim ItemMenu As New MenuItem()

With ItemMenu

.Text = StrTexto 'Nome que aparecerá no Menu (Item do menu)

.NavigateUrl = StrUrl 'URL para ser lincado

.ToolTip = StrLegenda 'Legenda (Alt)

End With

Return ItemMenu

End Function

 

Bom espero que esteja bem explicado, caso contrário pode chamar ai.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.