Just spitballing here, cant you assign all other forms as MDIChild and then loop them through using the MDIChildren property? Or if you can add them through the AddOwnedForm method, you can use the OwnedForms property instead.
Also, I dont think this line is going to work the way you would want it to work: f = New System.Windows.Forms.Form Its basically going to create an instance of 'Form' type always... Thanks, Kaarthik On Dec 16, 4:11 pm, Eduardo Pèrez Leyton <[email protected]> wrote: > Hello guys, plz help. > > I have a table with the data of my transactions (menu options) like > this > > type: M : Menu S : Submenu P: Option (click to open a form) > > id description type father > m_001 Menu 1 M NULL > m_002 SubMenu1 S m_001 > m_003 Option P m_002 > > Obs: The forms that I've created have de menu_id in them Name, and Tag > Property. > > Ok, with this style of table and organization I've created a dinamic > Menu in my MDI from in vb.net 2005. and it works right. The problem is > when I want to open a form giving a Click to the corresponding menu > option. > > First: I need to have a collections of all the forms of my application > (opened and closed). Then in runtime when generating the dinamic menu, > add a Click event to every Option in the menu dinamically too, and > asign the form of my form collection to be opened when I do click > above any option of my menu. > > Can someone help me..???? > > The problem is that this Sub only search in the OPENED forms, I need > to search in ALL forms....!!! > > Private Sub BuscaFormTag(ByVal tag As String) > For Each f As Form In My.Application.OpenForms > If f.Name.Equals(tag) Then > f = New System.Windows.Forms.Form > f.Show() > End If > Next > End > > Here's the code I use to generate the OPTIONS of my menu > > ' Genera las pantallas Tipo: P > For Each pant As DataRow In dt_pantallas.Rows > ReDim Preserve Pantallas(k) > If > pant("mn_padre").ToString().Equals(submenu("mn_codigo").ToString()) > Then > Pantallas(k) = New > System.Windows.Forms.ToolStripMenuItem > > With Pantallas(k) > .Name = > pant("mn_descripcion").ToString() > .Size = New System.Drawing.Size(152, > 22) > .Text = > pant("mn_descripcion").ToString() > .Tag = pant("mn_codigo") > .ToolTipText = pant("mn_codigo") > End With > MenuVertical(i).DropDownDirection = > ToolStripDropDownDirection.Right > MenuVertical(i).DropDownItems.AddRange(New > System.Windows.Forms.ToolStripItem() {Pantallas(k)}) > 'Manejador de eventos para determinar la > transaccion que se abrira con el evento click del menu > 'AddHandler MenuVertical(i).Click, > AddressOf BuscaFormTag > > End If > .... > > Any help are welcome
