Vraag : VB.NET 2008 voegt dynamisch de Controles van Vormen toe op Folders en Dossiers worden gebaseerd dat

Ik werk aan een toepassing die eind - gebruikers de capaciteit zal geven om manuscripten tegen een gegevensbestand in werking te stellen SQLServer.  De vorm zal lusjes voor elk type van manuscripten hebben (BO, FA, IRL) die folders zijn. De combodoos op elk lusje zal met de manuscripten van het worden bevolkt is respectieve folder.  In plaats van het moeten de vorm veranderen en bijwerken later als een nieuw type wordt toegevoegd en nieuwe manuscripten worden toegevoegd.  Ik wil tabpages aan mijn lusjecontrole op formload dynamisch toevoegen volgens welke folders in de belangrijkste folder zijn.  Momenteel heeft de belangrijkste folder de omslagen van „BO“ „FA“ en „IRL“.  Als ik „ST“ toevoeg ik wil een nieuw lusje op formload tonen.

Currently Alle 3 lusjes gecre�ërd worden maar in plaats van lusjes „BO“ „FA“ en „IRL“ ik krijg „IRL“ „FA“ en „IRL“.  Ik kan niet waarom berekenen. De lusjenaam voor alle einden omhoog „tbpIR“.  Mijn die controles (combobox en etiket) niet worden aan de tabpages.

See code below
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
Private Sub (ByVal afzender als Voorwerp, ByVal e als System.EventArgs) Handvatten Form1_Load Me.Load
        conn. Open ()


        Schemerige cmb als Nieuwe ComboBox
        Schemerige tbp als Nieuwe TabPage
        Schemerige lbl als Nieuw Etiket
        Schemerige dir als Nieuwe DirectoryInfo („\ \ server \ het \ ScriptTest \“)

        Voor Elke D als DirectoryInfo in dir.GetDirectories

            tbp. Naam = „tbp“ & d.Name
            tbp. Plaats = Nieuwe System.Drawing.Point (4, 22)
            tbp. Het opvullen = Nieuwe System.Windows.Forms.Padding (3)
            tbp. Grootte = Nieuwe System.Drawing.Size (281, 187)
            tbp.UseVisualStyleBackColor = Waar
            tbp. Tekst = d.Name
            Me.tbcModules.Controls.Add (tbp)

            cmb.FormattingEnabled = Waar
            cmb. Plaats = Nieuwe System.Drawing.Point (15, 98)
            cmb. Naam = „cmb“ & d.Name
            cmb. Grootte = Nieuwe System.Drawing.Size (228, 21)
            tbp. Controls.Add (cmb)

            lbl.AutoSize = Waar
            lbl. Plaats = Nieuwe System.Drawing.Point (12, 42)
            lbl. Naam = „Lbl“ & d.Name
            lbl. Grootte = Nieuwe System.Drawing.Size (219, 13)
            lbl.TabIndex = 3
            lbl. De tekst = „selecteert een baan van de daling onderaan menu in werking te stellen.“
            tbp. Controls.Add (lbl)

            Schemerige omslag als Nieuwe DirectoryInfo („\ \ server \ het \ ScriptTest \“ & d.Name)
            Schemerige tmpName als Koord = ""
            Probeer
                Voor Elk F als FileInfo in folder.GetFiles
                    cmb. Items.Add (f.Name.Replace („.txt“, ""))
                Daarna


            Vangst c als Uitzondering
                tbp. Schik ()
            Het eind probeert
        Daarna
    Sub van het eind

Antwoord : VB.NET 2008 voegt dynamisch de Controles van Vormen toe op Folders en Dossiers worden gebaseerd dat

Zonder het, maar bij een snelle blik te testen, zou ik voorstellen veranderend dit

Schemerige cmb als Nieuwe ComboBox
Schemerige tbp als Nieuwe TabPage
Schemerige lbl als Nieuw Etiket

aan dit
Schemerige cmb als ComboBox
Schemerige tbp als TabPage
Schemerige lbl als Etiket

en binnen voor elke lijn
reeks cmb = nieuwe ComboBox
enz.

Aangezien het verschijnt cre�ërt u één voorwerp en die de verwijzing wordt, eerder dan het creëren van nieuwe voorwerpen is veranderd.
Andere oplossingen  
 
programming4us programming4us