Ceci est facile à faire sans étendre TabControl/TabPage.
Définissez un UserControl et placez les éléments communs sur ce que vous voulez sur chaque TabPage.
Sur le formulaire: allez de l'avant et concevez les contrôles spécifiques TabPage que vous voulez pour chaque TabPage: assurez-vous qu'ils ne vont pas chevaucher visuellement les contrôles communs une fois que UserControl a été ajouté.
En cas de charge de forme de votre principale forme quelque chose comme ça:
// form scoped variable to hold a referece to the current UserControl
private UserControl1 currentUserControl;
private void Form1_Load(object sender, EventArgs e)
{
foreach(TabPage theTabPage in tabControl1.TabPages)
{
currentUserControl = new UserControl1();
theTabPage.Margin = new Padding(0);
theTabPage.Padding = new Padding(0);
theTabPage.Controls.Add(currentUserControl);
currentUserControl.Location = new Point(0,0);
currentUserControl.Dock = DockStyle.Fill;
currentUserControl.SendToBack();
}
}
Même si le « SendToBack est pas vraiment nécessaire ici, il est « assurance » que votre UserControl avec le bouton » OK et TextBox pour un message d'erreur sont placés derrière les contrôles individuels que vous avez assignés à chaque TabPage.
Un bouton OK sur chaque page? –
pas correctement une réponse, mais je pense que je vais faire un test prolongeant la tabcontrolpage d'origine, en ajoutant les caractéristiques communes dont vous avez besoin – michele