TabControl, ouvrir une page précise ( TabPage )

Résolu
DilleN Messages postés 10 Date d'inscription jeudi 4 février 2010 Statut Membre Dernière intervention 13 janvier 2011 - 21 nov. 2010 à 18:40
DilleN Messages postés 10 Date d'inscription jeudi 4 février 2010 Statut Membre Dernière intervention 13 janvier 2011 - 22 nov. 2010 à 12:33
Bonsoir à tous,

Je suis entrain de créer une application pour faire une gestion de produits.
J'ai une page d'accueil avec un MenuStrip. Suite à un clic dans une rubrique de mon menu,
je souhaiterais ouvrir un onglet bien précis du TabControl.
Le nom de la TabPage est TabConsulter.
J'ai essayé : (mais ce fut l'échec)

private void editionToolStripMenuItem_Click(object sender, EventArgs e)
{
Form Form3 = new Form3();
Form3.Show();
// TabControl1.SelectIndex = TabControl1.TabConsulter;


}

Si quelqu'un trouve une petite idée.
Merci

5 réponses

DouGyyy Messages postés 10 Date d'inscription samedi 20 novembre 2010 Statut Membre Dernière intervention 5 septembre 2013
21 nov. 2010 à 19:20
Ok donc tu lances ton Form3 depuis le Form2 et tu voudrais que ce Form3 se lance avec la tab désirée ?
(si j'ai bien compris)
Si oui tu peux faire comme ceci.

private void editionToolStripMenuItem_Click(object sender, EventArgs e)
{
Form Form3 = new Form3();
Form3.Show();
// il faut donc cibler le bon tabControl et changer sa tabpage
TabControl t = (TabControl)Form3.Controls["tabControl1"];
t.SelectedTab = t.TabPages["tabConsulter"];
}
3
DouGyyy Messages postés 10 Date d'inscription samedi 20 novembre 2010 Statut Membre Dernière intervention 5 septembre 2013
21 nov. 2010 à 19:01
Hello,

Tu peux procéder comme ceci si la solution te convient :
tabControl.SelectedTab = tabControl.TabPages["tabPageName"];


Bien à toi,
DouGyyy.
0
DilleN Messages postés 10 Date d'inscription jeudi 4 février 2010 Statut Membre Dernière intervention 13 janvier 2011
21 nov. 2010 à 19:08
Enfaite ma fonction ce situe dans ma Form2 (Page d'accueil ou ce trouve le menu)
La Form3, c'est la page ou ce trouve le TabControl donc là sa passe pas.


private void editionToolStripMenuItem_Click(object sender, EventArgs e)
{
Form Form3 = new Form3();
Form3.Show();
tabControl.SelectedTab = tabControl.TabPages["tabConsulter"];

}

L'erreur :
" Le nom 'tabControl' n'existe pas dans le contexte actuel "
0
Shaolyne Messages postés 155 Date d'inscription jeudi 12 mai 2005 Statut Membre Dernière intervention 8 mars 2011 1
22 nov. 2010 à 09:08
Bien le bonjour,

Je pense que le code de Dougy répond tout à fait à tes besoins.
Je me permet juste de recommander une séparation de la logique métier qui devrait, dans le cas présent, incomber à Form3.
En bref, il faudrait avoir une méthode "ChangeTab" dans Form3 qui se chargerait de contenir la logique métier de la sélection du tab adéquat. Cela semble dérisoire quand tu as 2 lignes de code mais critique dans le cadre d'applications de plus grande taille.
En paramètre de cette méthode, tu peux passer une Enum, une constante définie dans la Form3 et etc...

Shao.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
DilleN Messages postés 10 Date d'inscription jeudi 4 février 2010 Statut Membre Dernière intervention 13 janvier 2011
22 nov. 2010 à 12:33
Merci pour votre aide !
Mon soucis est réglé :)
0
Rejoignez-nous