¿Como crear un menu dependiendo del usuario???

25/11/2005 - 12:28 por Adria Grau Rovira | Informe spam
Buenos dias, me dispongo a crear un programa el cual tenga un menu, que lea
las opciones que puede mostrar al usuario que entra en la aplicación.

El menu debería de ser creado cuando se entra en la aplicación, de tal forma
que cuando quiera, pueda poner o quitar algun menu.

Necesito que disponga de un maximo de 3 niveles, ya que con 2 se quedaria
muy mal para lo que quiero.

¿Alguien seria tan amable de hecharme un cable? He probado varias cosas,
pero he conseguido dar con lo que quiero exactamente.

Gracias.

Preguntas similare

Leer las respuestas

#1 carlos
25/11/2005 - 13:55 | Informe spam
Buenas Adria.
La manera de solucionar esos problemas es creando una función recursiva.
SI almacenas en una tabla los posibles menus la estructura seria mas o menos
asi.

ID (Este campo debe ser unico)
Descripcion (Texto del menu)
Padre (Referencia al menu padre se almacenaria valores ID)

Espero q te sirva de orientación.
Carlos.
Info sobre recursividad.

http://msdn.microsoft.com/library/s...ecurse.asp





"Adria Grau Rovira" escribió:

Buenos dias, me dispongo a crear un programa el cual tenga un menu, que lea
las opciones que puede mostrar al usuario que entra en la aplicación.

El menu debería de ser creado cuando se entra en la aplicación, de tal forma
que cuando quiera, pueda poner o quitar algun menu.

Necesito que disponga de un maximo de 3 niveles, ya que con 2 se quedaria
muy mal para lo que quiero.

¿Alguien seria tan amable de hecharme un cable? He probado varias cosas,
pero he conseguido dar con lo que quiero exactamente.

Gracias.
Respuesta Responder a este mensaje
#2 Adria Grau Rovira
25/11/2005 - 16:38 | Informe spam
Gracias por la info, ahora mismo la estudiare.

Aunque quisiera saber tambien si dispones de codigo o me puedes indicar como
he de construir el menu, simplemente el codigo del menu para los 3 niveles.
De la recursividad ya he encargo yo xD

Muchas gracias
Respuesta Responder a este mensaje
#3 Tristan
25/11/2005 - 23:04 | Informe spam
Prueba este ejemplo que dejé en este foro hace mucho tiempo:

http://groups.google.es/group/micro...a04e888324

Juan Carlos Badiola
MVP - C#
Respuesta Responder a este mensaje
#4 Tristan
26/11/2005 - 00:33 | Informe spam
El ejemplo que te he puesto estaba pensado para seguir el esquema que pidió
un usuario. Aprovecho para mostrar como lo haría yo: mediante un documento
xml que puedes guardar en un campo de una tabla:

Dim xml As New XmlDocument
xml.Load("..\xmlfile1.xml")
Dim menu As New MainMenu
CreaMenu(menu, xml("menu"))
Me.Menu = menu

Private Sub CreaMenu(ByVal menu As Menu, ByVal nodo As XmlNode)
For Each hijo As XmlNode In nodo
Dim mItem As New MenuItem(hijo.Attributes("texto").Value)
menu.MenuItems.Add(mItem)
CreaMenu(mItem, hijo)
Next
End Sub

Pruebalo con el siguiente documento xml.

<?xml version="1.0" encoding="utf-8"?>
<menu>
<item texto="Archivo">
<item texto="Abrir" />
<item texto="Guardar" />
<item texto="Imprimir">
<item texto="PDF" />
<item texto="TXT" />
</item>
</item>
<item texto="Edición">
<item texto="Copiar" />
<item texto="Pegar" />
</item>
</menu>


Para cargarlo desde una tabla sustituye el xml.Load(...) por
xml.LoadXml(texto xml).

Además de texto podrías añadir otros atributos y asignarlos a propiedades
del MenuItem.

Juan Carlos Badiola
MVP - C#
Respuesta Responder a este mensaje
#5 carlos
26/11/2005 - 10:49 | Informe spam
Esto es lo q buscas.
http://www.wwwcoder.com/main/parent...fault.aspx
"Adria Grau Rovira" escribió:

Buenos dias, me dispongo a crear un programa el cual tenga un menu, que lea
las opciones que puede mostrar al usuario que entra en la aplicación.

El menu debería de ser creado cuando se entra en la aplicación, de tal forma
que cuando quiera, pueda poner o quitar algun menu.

Necesito que disponga de un maximo de 3 niveles, ya que con 2 se quedaria
muy mal para lo que quiero.

¿Alguien seria tan amable de hecharme un cable? He probado varias cosas,
pero he conseguido dar con lo que quiero exactamente.

Gracias.
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida