LISTAR FORMULARIOS DE UM SISTEMA EM VB.NET

MALA 28/05/2010 11:03:04
#343062
LISTAR FORMULARIOS DE UM SISTEMA e jogar num combobox e tb se alguem saber listar os menus de um mdi e jogar num combobox.

fico grato desde ja a atencao de vcs.
JONATHANSTECKER 28/05/2010 11:50:00
#343070
Bom dia Malac,

Ve se é isso que você precisa...

Dim Menu As Object
For Each Menu In MenuStrip.Items
If TypeOf Menu Is ToolStripMenuItem Then
Me.ComboBox1.Items.Add(Menu.Text)
End If
Next

Dim Formulario As Object
For Each Formulario In MdiChildren
If TypeOf Formulario Is Form Then
Me.ComboBox2.Items.Add(Formulario.Text)
End If
Next

Atenciosamente,
Jonathan Stecker
JONATHANSTECKER 11/06/2010 11:37:53
#344593
Caso a dúvida tenha sido respondida encerre o tópico... Caso contrário, avise para tentarmos lhe ajudar.
MALA 11/06/2010 11:42:11
#344597
ISSO NAO FUNCIONOU, ESTE CODIGO SO CARREGA OS FORMULARIOS ABERTOS EU PRECISO OS QUE NAO ESTAO ABERTOS TB
NELSONSOUSA 12/07/2010 09:07:51
#347057
Olá,

Eu tenho aqui só que estou com um problema na rotina.
No final do código está abrindo o frm inicial do sistema:

Private Sub MostraForms()
Dim frms As Object
Dim p As System.Reflection.PropertyInfo
Dim dt As New DataTable
Dim NovaDr As DataRow

frms = My.Forms
dt.Columns.Add([Ô]TextoForm[Ô], GetType(System.String))
dt.Columns.Add([Ô]Formulario[Ô], GetType(System.String))

For Each p In frms.GetType.GetProperties
If p.DeclaringType.Name.ToUpper = [Ô]MYFORMS[Ô] Then

Dim obj As New Object
obj = p.GetValue(frms, Nothing)


NovaDr = dt.NewRow()
NovaDr([Ô]TextoForm[Ô]) = CType(obj, Form).Text
NovaDr([Ô]Formulario[Ô]) = CType(obj, Form).Name
dt.Rows.Add(NovaDr)

End If

Next

[ô]preenche a combobox com os nomes dos forms
With cboForms
.DataSource = dt
.DisplayMember = [Ô]TextoForm[Ô]
.ValueMember = [Ô]Formulario[Ô]
End With

End Sub
Tópico encerrado , respostas não são mais permitidas