Foros del Web » Programación para mayores de 30 ;) » .NET »

Menú8s dinámicos en C#

Estas en el tema de Menú8s dinámicos en C# en el foro de .NET en Foros del Web. Alguien sabe cómo se crean menús dinámicos en C# leyendo los datos que quiero agregar al menú de una base de datos o un archivo? ...
  #1 (permalink)  
Antiguo 17/06/2008, 06:21
 
Fecha de Ingreso: mayo-2008
Mensajes: 16
Antigüedad: 16 años
Puntos: 0
Menú8s dinámicos en C#

Alguien sabe cómo se crean menús dinámicos en C# leyendo los datos que quiero agregar al menú de una base de datos o un archivo? Y en un treeView? Gracias!!
  #2 (permalink)  
Antiguo 17/06/2008, 10:59
Avatar de JonhyReyes  
Fecha de Ingreso: febrero-2007
Mensajes: 103
Antigüedad: 17 años, 3 meses
Puntos: 1
Respuesta: Menú8s dinámicos en C#

Te paso el código en Basic.... puedes convertirlo a CSharp con algún convertidor... Espero te sirva..

Cita:
For Each seccion As Seccion In Secciones
'Secciones es una lista de clases de Seccion (List OF(Seccion))... tu puedes usar un
'DataTable
Dim SeccionItem As New ToolStripMenuItem()
' Se coloca el nombre a la seccion para ser controlada al ingresar los items de detalle
SeccionItem.Name = seccion.NomSeccion
SeccionItem.Text = seccion.NomSeccion
'Le asigno la identidad al encabezado del menú o Sección

Dim cMen As New cMenu
'cMen es una clase que me sirve para llenar los listados
MenuSeccion = cMen.MenuSeccion(seccion.IDSeccion, User.CodPerfil)

'Recorro el resultado
For Each mnuItem As SysMenu In MenuSeccion
Dim item As New CustomMenuItem(mnuItem.OpcionMenu, New EventHandler(AddressOf Menu_Click))
item.IDMenu = mnuItem.IDMenu
item.NombreFormulario = mnuItem.Formulario
item.Text = mnuItem.OpcionMenu
item.ToolTipText = mnuItem.OpcionMenu
SeccionItem.DropDownItems.Add(item)
Next
Me.MainMenu.Items.Add(SeccionItem)
Next
End If
End Sub


Y este método talvez te sirva:
El parámetro nombre Form debe ser así : "NombreProyecto.FrmPrueba", sino te da error
Private Function GetNewInstanceFromString(ByVal NombreForm As String) As System.Windows.Forms.Form
Dim Frm As New Object
Dim toop As New System.Windows.Forms.Form
Dim valor As New System.Runtime.Remoting.ObjectHandle(Frm)
valor = AppDomain.CurrentDomain.CreateInstance(Assembly.Ge tExecutingAssembly().FullName, NombreForm)
toop = CType(valor.Unwrap, Form)
Return toop
End Function
Espero te sirva... por cualquier duda la posteas y voy a estar atento

Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:35.