[C#] TabPage at runtime toevoegen: tabpage altijd leeg

Pagina: 1
Acties:

  • Robbeke
  • Registratie: September 2001
  • Laatst online: 29-12-2018
Hoi,

Ik zit dus met het probleem beschreven in de titel, wanneer ik een nieuwe TabPage aan mijn TabControl voeg blijft deze leeg, ondanks dat ik componenten toegevoegd heb met Controls.Add.

Mijn code:

code:
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
47
public void AddTab(string name) 
            {
                TabPage tbTest = new System.Windows.Forms.TabPage();
                Panel p1 = new Panel();
                RichTextBox rtf1 = new System.Windows.Forms.RichTextBox();
                MyTextBox txt = new MyTextBox();
        
                rtf1.Dock = System.Windows.Forms.DockStyle.Fill;
                rtf1.Font = new System.Drawing.Font("Courier New", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
                rtf1.HideSelection = false;
                rtf1.Location = new System.Drawing.Point(0, 0);
                rtf1.Name = "rtf";
                rtf1.ReadOnly = true;
                rtf1.ScrollBars = System.Windows.Forms.RichTextBoxScrollBars.Vertical;
                rtf1.Size = new System.Drawing.Size(501, 403);
                rtf1.TabIndex = 1;
                rtf1.Text = "";

                txt.Dock = System.Windows.Forms.DockStyle.Bottom;
                txt.Font = new System.Drawing.Font("Verdana", 8.25F);
                txt.Location = new System.Drawing.Point(0, 403);
                txt.Name = "txtMsg";
                txt.Size = new System.Drawing.Size(501, 21);
                txt.TabIndex = 0;
                txt.Text = "";
                txt.KeyUp += new System.Windows.Forms.KeyEventHandler(this.onEnter);

                p1.Controls.Add(rtf1);
                p1.Controls.Add(txt);
                p1.Dock = System.Windows.Forms.DockStyle.Fill;
                p1.Location = new System.Drawing.Point(0, 0);
                p1.Name = "panel1";
                p1.Size = new System.Drawing.Size(501, 424);
                p1.TabIndex = 4;

                tbTest.Controls.Add(p1);
                tbTest.Controls.Add(rtf1);
                tbTest.ImageIndex = 3;
                tbTest.Location = new System.Drawing.Point(4, 25);
                tbTest.Name = name;
                tbTest.RightToLeft = System.Windows.Forms.RightToLeft.No;
                tbTest.Size = new System.Drawing.Size(624, 424);
                tbTest.TabIndex = 3;
                tbTest.Text = name;

                tbServer.Controls.Add(tbTest);
            }


Heb ook al aan het prutsen geweest met SuspendLayout en ResumeLayout zonder weinig resultaat. Ik vind ook weinig informatie hier omtrent... Wat zie ik over het hoofd? :?

http://www.tweakers.net/gallery/sys/2314


  • Robbeke
  • Registratie: September 2001
  • Laatst online: 29-12-2018
echt niemand die me op weg kan helpen?

http://www.tweakers.net/gallery/sys/2314


  • MrSleeves
  • Registratie: Februari 2004
  • Laatst online: 10-04 19:23

MrSleeves

You'll thank me later.

Euhm.. vergeet je niet TabControl. Een TabPage werkt alleen in een TabControl.

Dus je hebt je Form (o.i.d.). Daar zet je een TabControl in. In de TabControl gaan al je TabPages en daar zet je vervolgens alle andere controls in.

30Drie Web Design & IT Consultancy | Raven Consultancy Services


  • Robbeke
  • Registratie: September 2001
  • Laatst online: 29-12-2018
tnx 4 de reply :)

Ik weet dat je een TabControl moet gebruiken en in dit geval is dit variabele tbServer die privaat gedeclareerd is in mijn klasse, maar dat stuk code heb ik niet mee gekopieerd.

Zoals je ziet voeg ik in de laatste regels de tab toe aan de tabcontrol met Controls.Add, maar ik krijg nog steeds een lege tab.

Is er iets dat ik vergeten ben of ergens mijn volgorde verkeerd? :+

http://www.tweakers.net/gallery/sys/2314


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:34
Doe eens:
code:
1
tbServer.TabPages.Add (myNewTabPage);

https://fgheysels.github.io/