Ver Mensaje Individual
  #6 (permalink)  
Antiguo 18/08/2010, 16:23
jmarrugo
 
Fecha de Ingreso: agosto-2010
Mensajes: 1
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: MenuStrip dinamico desde SQL alguien me da la mano [Urgente]

buenas tarde este codigo te genera el menu desde la base de datos pero no te genera el submenu de cada item si sabes como hacerlo e seria de gran ayuda.

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Dim mnuOpcion As ToolStripMenuItem
Dim dataconnect As New SqlConnection(ConfigurationManager.ConnectionStrin gs("dbconect").ConnectionString)
Dim db As New SqlDataAdapter("SELECT * FROM proceso", dataconnect)
Dim dt As New DataTable
Dim ds As New DataSet
db.Fill(dt)
For Vpos1 = 0 To dt.Rows.Count - 1
mnuOpcion = New ToolStripMenuItem(Trim(dt.Rows(Vpos1).Item("detall e").ToString()))
mnuOpcion.Tag = Trim(dt.Rows(Vpos1).Item("detalle").ToString())
'añadir este menu desplegable a la barra de menu principal
MenuStrip1.Items.Add(mnuOpcion)
'Vcondicion = "cve_modu='" & dt.Rows(Vpos1).Item("cve_modu").ToString() & "' and nivel=2"
'recorrer si hubiera las opciones derivadas de este menu
CrearSubopciones(mnuOpcion, dt.ToString)
Next

End Sub

Private Sub CrearSubopciones(ByVal mnuOpcion As ToolStripMenuItem, ByVal cond As String)
Dim mnusubOpcion As ToolStripMenuItem
Dim dataconnect As New SqlConnection(ConfigurationManager.ConnectionStrin gs("dbconect").ConnectionString)
Dim dbl As New SqlDataAdapter("SELECT proceso.codigoproceso, indicador.detalles FROM proceso INNER JOIN indicador ON proceso.codigoproceso = indicador.codigoproceso", dataconnect)
Dim dtl As New DataTable
dbl.Fill(dtl)

For Vpos1 = 0 To dtl.Rows.Count - 1


mnusubOpcion = New ToolStripMenuItem(Trim(dtl.Rows(Vpos1).Item("detal les").ToString()))
mnusubOpcion.Tag = Trim(dtl.Rows(Vpos1).Item("detalles").ToString())

mnuOpcion.DropDownItems.Add(mnusubOpcion)

Next

End Sub