Toon posts:

[vb.net] Dynamische controls gebruiken

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben met een programma bezig waar ik tabbladen gebruik. Hoeveel tabpages er komen ligt eraan hoeveel er geselecteerd wordt uit een listview.

Die tabpages maakt hij goed aan ik gebruik ook 1 "voorbeeldpage" waar ik alle tekstvakken etc. uit kopieer in de nieuwe tabpage. Mijn vraag is. Hoe kan ik die tekstvakken in de nieuwe tabs gebruiken.

  • whoami
  • Registratie: December 2000
  • Laatst online: 22:54
Je kan je textboxen toch ook dynamisch aanmaken?

https://fgheysels.github.io/


Verwijderd

Topicstarter
ik kopieer die hele "voorbeeldtab" in een nieuwe tabpage

Visual Basic .NET:
1
2
3
4
                    Dim tab As New TabPage
                    tabKlanten.TabPages(0) = tab
                    tab.Text = .GetString(1) & " " & .GetString(2) 
                    tabKlanten.TabPages.Add(tab)


Hiermee kopieer ik alles. alleen ik kan die textboxen niet bereiken binnen die gekopieerde pages.

btw. Na het kopieren van de tabpages verwijder ik de voorbeeldtabpage

[ Voor 13% gewijzigd door Verwijderd op 13-10-2003 09:24 ]


  • LoekD
  • Registratie: Augustus 2000
  • Laatst online: 09-08 16:24
In C# kan het zo:

code:
1
2
3
4
5
foreach ( Control c in tabKlanten.Controls)
{ 
         if ( typeof( c ) == typeof( System.Windows.Forms.TextBox ))
         //doe iets met ((TextBox)c)
}

[ Voor 3% gewijzigd door LoekD op 13-10-2003 10:22 . Reden: '=' en typeof toegevoegd ]

loading...


Verwijderd

Topicstarter
Als ik kijk welke controls er in de tabpage staan zegt hij 0. Maar de tekstvakken bestaan wel. Dus die manier om te kijken welke controls binnen in die tabpage zitten lukt niet.

  • LoekD
  • Registratie: Augustus 2000
  • Laatst online: 09-08 16:24
Feit:
Als je tabpage geen controls heeft, heeft hij dus ook geen textboxes.
Conclusie:
Als je textboxes wel bestaan, staan deze ergens anders. (alleen op de voorbeeld pagina dus)

loading...


Verwijderd

Topicstarter
LoekD schreef op 13 October 2003 @ 12:12:
Feit:
Als je tabpage geen controls heeft, heeft hij dus ook geen textboxes.
Conclusie:
Als je textboxes wel bestaan, staan deze ergens anders. (alleen op de voorbeeld pagina dus)
ze staan in elke tabpage want als ik ze run zie ik tekstboxen bij alle tabpages :S maar ik zal ff kijken nog en wat meer info geven..

  • LoekD
  • Registratie: Augustus 2000
  • Laatst online: 09-08 16:24
Doe voor de grap eens zoiets dan:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
private int aantalTextBoxes
[..]
private void CountTextBoxes( Control Ctrl )
{
    foreach ( Control c in Ctrl)
        { 
             if c.Controls.Count > 0
                CountTextBoxes(c)
             else
                if ( typeof( c ) == typeof( System.Windows.Forms.TextBox ))
                    this.aantalTextBoxes+=1;
        }
}

//roep em aan met (Control)this
//kijk na afloop hoe groot aantalTextBoxes is

loading...


Verwijderd

Topicstarter
Ik heb het antwoord al waarom het niet wou. Er zijn components van de voorbeeldpage die gekopieerd worden dacht ik. Maar hij gebruikt bij elk tabblad dezelfde control (gewoon een tekstvak gevuld met een waarde en kijken of die overal hetzelfde is)

Dus ik zal nog ff zoeken,.. iig thnx iedereen
Pagina: 1