nombre de objetos System.Windows.Forms.MenuItem

09/08/2006 - 17:01 por Chevy | Informe spam
Hola todos,

es para preguntar cómo obtengo el nombre de cada uno de los elementos
System.Windows.Forms.MenuItem de un System.Windows.Forms.MainMenu.

inicialmente he hecho un procedimiento para recorrer el arbol de menú pero
no encuentro la manera de obtener el nombre del elemento en vez de Caption
del elemento de menú.
He revisado todas las propiedaes de este tipo de objetos pero no encuentro
la propiedad Name, como sí sucede en un contro tipo textBox
(Me.TextBox1.Name).

Necesito los nombres de cada elemento de menú para asociar elemento a un
usuario del sistema y controlar el acceso de esta manera.

mil gracias.

El código con el que recorro el arbol de menú es el siguiente:


Private Sub CargarMenus(ByVal mc As Menu.MenuItemCollection, ByVal sb As
System.Text.StringBuilder, ByVal intNivel As Integer)
For Each mi As MenuItem In mc
sb.Append(mi.Text & vbNewLine)
If mi.MenuItems.Count > 0 Then CargarMenus(mi.MenuItems, sb, intNivel
+ 1)
Next mi
End Sub


Eusebio
 

Leer las respuestas

#1 DosFlores
14/08/2006 - 11:44 | Informe spam
Pues he pegado el código en un form windows de VS2005 y me aparece .Name sin
problemas.

Un saludo
Oscar Montesinos
Santa Pola (Alicante)
"Chevy" escribió en el mensaje
news:
Hola todos,

es para preguntar cómo obtengo el nombre de cada uno de los elementos
System.Windows.Forms.MenuItem de un System.Windows.Forms.MainMenu.

inicialmente he hecho un procedimiento para recorrer el arbol de menú pero
no encuentro la manera de obtener el nombre del elemento en vez de Caption
del elemento de menú.
He revisado todas las propiedaes de este tipo de objetos pero no encuentro
la propiedad Name, como sí sucede en un contro tipo textBox
(Me.TextBox1.Name).

Necesito los nombres de cada elemento de menú para asociar elemento a un
usuario del sistema y controlar el acceso de esta manera.

mil gracias.

El código con el que recorro el arbol de menú es el siguiente:


Private Sub CargarMenus(ByVal mc As Menu.MenuItemCollection, ByVal sb As
System.Text.StringBuilder, ByVal intNivel As Integer)
For Each mi As MenuItem In mc
sb.Append(mi.Text & vbNewLine)
If mi.MenuItems.Count > 0 Then CargarMenus(mi.MenuItems, sb, intNivel
+ 1)
Next mi
End Sub


Eusebio

Preguntas similares