Findet Ihr es nicht auch lästig, dass es kein dem
Ein
Wenn man eine von
![](https://www.vb-paradise.de/index.php/Attachment/27191-DesignerView-jpg/?thumbnail=1)
Mit einem kleinen Trick lässt sich der Designer dazu benutzen, TabPages solo zu bearbeiten, die dann einfach dem
Also:
1. ein TabControl auf die betreffende Form ziehen.
2. wenn nicht gewünscht die beiden Default-TabPages löschen.
![](https://www.vb-paradise.de/index.php/Attachment/27175-Entfernen-png/?thumbnail=1)
![](https://www.vb-paradise.de/index.php/Attachment/27176-leer-png/?thumbnail=1)
3. fügen wir dem Projekt eine
und weil das so einfach ist, gleich noch eine:
![](https://www.vb-paradise.de/index.php/Attachment/27177-TabTest-png/)
4. Diese beiden Formen befüllen wir nun mit den im TabControl gewünschten Controls:
![](https://www.vb-paradise.de/index.php/Attachment/27179-Tab2-png/?thumbnail=1)
5. und schreiben folgenden Code in die Form1_Load:
Was passiert?
Nix. Richtig.
Nun kommt der große Trick:
6. Wir öffnen die Dateien TabTest1.Designer.vb und TabTest2.Designer.vb um Editor und ändern die Basisklasse von
Lasst aber die Original-Zeile als Kommentar stehen, denn wenn Ihr den Designer noch einmal bemühen wollt, müsst Ihr wieder zurück auf ![8o](https://www.vb-paradise.de/wcf/images/smilies/w00t.png)
Nun wird alles compiliert.
Es zeigt sich, dass der Designer für die
![](https://www.vb-paradise.de/index.php/Attachment/27181-Compilerfehler-png/?thumbnail=1)
7. Diese Zeilen werden einfach für jede so erstellte
Compilieren, starten, staunen:
UserControl
äquivalentes Control für eine TabPage
gibt?Ein
TabControl
hält, vollständig im Designer erstellt, immer alle Objekte aller TabPages
, und das ist meiner Meinung nach nicht unbedingt im Sinne der ObjektOrientierten Programmierung.Wenn man eine von
TabControl
abgeleitete Klasse erstellt, zeigt sich beim Doppelklick drauf im Projektmappen-Explorer solch eine Darstellung:Mit einem kleinen Trick lässt sich der Designer dazu benutzen, TabPages solo zu bearbeiten, die dann einfach dem
TabControl
per Code hinzugefügt werden.Also:
1. ein TabControl auf die betreffende Form ziehen.
2. wenn nicht gewünscht die beiden Default-TabPages löschen.
3. fügen wir dem Projekt eine
Windows Form
hinzu und geben ihr einen ordentlichen Namen: TabTest1
und weil das so einfach ist, gleich noch eine:
TabTest2
:4. Diese beiden Formen befüllen wir nun mit den im TabControl gewünschten Controls:
5. und schreiben folgenden Code in die Form1_Load:
Nix. Richtig.
Nun kommt der große Trick:
6. Wir öffnen die Dateien TabTest1.Designer.vb und TabTest2.Designer.vb um Editor und ändern die Basisklasse von
System.Windows.Forms.Form
in System.Windows.Forms.TabPage
:Form
switchen. ![8o](https://www.vb-paradise.de/wcf/images/smilies/w00t.png)
Nun wird alles compiliert.
Es zeigt sich, dass der Designer für die
Form
-Basisklasse 2 Einträge erstellt hat, die eine TabPage
nicht kennt:7. Diese Zeilen werden einfach für jede so erstellte
TabPage
gelöscht und feddich.Compilieren, starten, staunen:
Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch
Ein guter .NET-Snippetkonverter (der ist verfügbar).
Programmierfragen über PN / Konversation werden ignoriert!
Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch
![:!:](https://www.vb-paradise.de/wcf/images/smilies/attention.png)
Ein guter .NET-Snippetkonverter (der ist verfügbar).
Programmierfragen über PN / Konversation werden ignoriert!
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „RodFromGermany“ ()