009
24.10.2006, 15:23 Uhr
ao
(Operator)
|
Zitat von J-jayz-Z: |
TabIndexChanged ändert ein Panel das nicht innerhalb des TabPanels ist sondern daneben - sry, wenn ich mich da etwas unglücklich ausgedrückt hab
|
Ich habs mal nachgebaut, und stimmt, jetzt seh ichs auch.
Und ich weiß auch, warum. Es liegt am Designercode. Du hast die Panels mit der Maus übereinandergelegt, und der Designer hat verstanden, dass das eine Panel das Kind vom anderen sein soll. Ausschnitt aus InitializeComponent:
C++: |
// // panel1 // this.panel1.Controls.Add(this.button3); this.panel1.Controls.Add(this.panel2); // <<<--- das darf nicht! Auskommentieren! this.panel1.Location = new System.Drawing.Point(276, 25); this.panel1.Name = "panel1"; this.panel1.Size = new System.Drawing.Size(200, 100); this.panel1.TabIndex = 3;
|
Stattdessen hier Zeile einfügen:
C++: |
// // Form1 // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(727, 348); this.Controls.Add(this.panel1); this.Controls.Add(this.panel2); // <<<--- diese Zeile einfügen! // Achtung: nicht this.panel1.Controls......! this.Controls.Add(this.tabControl1); this.Name = "Form1"; this.Text = "Form1"; this.tabControl1.ResumeLayout(false); this.tabPage1.ResumeLayout(false); this.tabPage2.ResumeLayout(false); this.panel1.ResumeLayout(false); this.panel2.ResumeLayout(false); this.ResumeLayout(false);
|
|