Accueil > > > NAVIGATION DANS UNE TABCONTROL
NAVIGATION DANS UNE TABCONTROL
Information sur la source
Description
Voici un petit script sur les TabControl. Il permet de passer d'une TabPage a une autre peut importe le nombre de page. La navigation se fait grace au Index.
Source
- using System;
- using System.Windows.Forms;
-
- namespace WindowsApplication1
- {
- public partial class Form1 : Form
- {
- public Form1()
- {
- InitializeComponent();
- }
-
- ////////////////////////
- // TabControl - floptwo :
- //
- // Voici un petit script sur les TabControl.
- // Il permet de passer d'une TabPage a une
- // autre peut importe le nombre de page.
- // La navigation se fait grace au Index.
- //
- // par floptwo.
- ////////////////////////
- //
- // tabControl1.SelectedIndex :
- // numero d'index de la tab de tabControl1
- // selectionnée.
- //
- // tabControl1.TabCount :
- // Le nombre de Tab de la tab tabControl1.
- //
- // button_premier.Enabled :
- // 'button_premier' est le nom d'un des boutons
- // 'Enabled' permet d'activer ou pas le bouton
- // 'button_premier'.
- // Si button_premier.Enabled = true le bouton
- // 'button_premier' sera activé.
- // Si button_premier.Enabled = false le bouton
- // sera désactivé.
- //
- // button_premier_Click (object sender, EventArgs e) :
- // Permet de définir les actions à effectuer lors
- // d'un click sur le bouton premier
- //
- // tabControl1_Selected (object sender, TabControlEventArgs e) :
- // Permet de définir les actions à effectuer lorsqu'une
- // tab est selectionnée.
- //
- ////////////////////////
- //
- // Pour ceux qui se poseraient la question, j'active ou
- // désactive les boutons de navigation au changement de
- // tab selectionnée.
- // Il serait tout à fait possible de le faire à chaque
- // click en fonction de le l'index de la tab qui sera
- // selectionnée, soit, après les tabControl1.SelectedIndex = ...
- //
- ////////////////////////
- //
- // '0' est le numero d'index de la 1ere tab
- // donc s'il y a 5 tab, l'index de la 5eme
- // ser '4'.
- //
- ////////////////////////
-
- private void button_premier_Click(object sender, EventArgs e)
- {
- // En cliquant sur 'button_premier'
- // la 1ere tab sera selectionner
- tabControl1.SelectedIndex = 0;
- }
-
- private void button_precedent_Click(object sender, EventArgs e)
- {
- // Si la tab selectionnée n'est pas la premiere
- if (tabControl1.SelectedIndex > 0)
- {
- // La tab selectionnée sera celle dont l'index sera son index - 1
- // si son index est 4 la tab a selectionner sera 3 : 4 - 1
- tabControl1.SelectedIndex = tabControl1.SelectedIndex - 1;
- }
- }
-
- private void button_suivant_Click(object sender, EventArgs e)
- {
- // Il ne peut il y avoir une tab suivante que si son l'index
- // de la tab selectionnée est inferieur au nombre de tab.
- // S'il y a 5 tab l'index de la 5eme est 4, donc si la 5eme tab
- // qui a pour index 4 est selectionée, la prochaine tab (la 5eme)
- // aura pour index sera 5 (= 4 + 1)
- // or 5 n'est pas inferieur au (ou different du) nombre de tab
- // c'est a dire 5, il n'y aura donc pas de tab suivante!
- if (tabControl1.SelectedIndex < tabControl1.TabCount)
- {
- // La tab à selectionner est la prochaine
- // On ajoute donc 1 a l'index de la tab selectionnée
- // 3eme tab selectionnée la prochaine est la 4eme :
- // 4 = 3 + 1.
- tabControl1.SelectedIndex = tabControl1.SelectedIndex + 1;
- }
- }
-
- private void button_dernier_Click(object sender, EventArgs e)
- {
- // S'il y a 5 tab l'index de la 5eme est 4,
- // donc on retir 1 au nombre de tab et on obtient
- // l'index de la derniere table.
- tabControl1.SelectedIndex = tabControl1.TabCount - 1;
- }
-
- // A chaque changement de tab...
- private void tabControl1_Selected(object sender, TabControlEventArgs e)
- {
- // Si la premiere tab est selectionnée...
- if (tabControl1.SelectedIndex == 0)
- {
- // On désactive les boutons premier et précédent
- button_premier.Enabled = false;
- button_precedent.Enabled = false;
- button_suivant.Enabled = true;
- button_dernier.Enabled = true;
- }
- // Si c'est la dernière tab qui est selectionnée...
- else if (tabControl1.SelectedIndex == tabControl1.TabCount - 1)
- {
- // On désactive les boutons suivant et dernier
- button_premier.Enabled = true;
- button_precedent.Enabled = true;
- button_suivant.Enabled = false;
- button_dernier.Enabled = false;
- }
- // Si ni la permière ni la dernière qui est selectionnée...
- else
- {
- // On active tous les boutons
- button_premier.Enabled = true;
- button_precedent.Enabled = true;
- button_suivant.Enabled = true;
- button_dernier.Enabled = true;
- }
- }
-
- ////////////////////////
- // par floptwo.
- ////////////////////////
-
- }
- }
using System;
using System.Windows.Forms;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
////////////////////////
// TabControl - floptwo :
//
// Voici un petit script sur les TabControl.
// Il permet de passer d'une TabPage a une
// autre peut importe le nombre de page.
// La navigation se fait grace au Index.
//
// par floptwo.
////////////////////////
//
// tabControl1.SelectedIndex :
// numero d'index de la tab de tabControl1
// selectionnée.
//
// tabControl1.TabCount :
// Le nombre de Tab de la tab tabControl1.
//
// button_premier.Enabled :
// 'button_premier' est le nom d'un des boutons
// 'Enabled' permet d'activer ou pas le bouton
// 'button_premier'.
// Si button_premier.Enabled = true le bouton
// 'button_premier' sera activé.
// Si button_premier.Enabled = false le bouton
// sera désactivé.
//
// button_premier_Click (object sender, EventArgs e) :
// Permet de définir les actions à effectuer lors
// d'un click sur le bouton premier
//
// tabControl1_Selected (object sender, TabControlEventArgs e) :
// Permet de définir les actions à effectuer lorsqu'une
// tab est selectionnée.
//
////////////////////////
//
// Pour ceux qui se poseraient la question, j'active ou
// désactive les boutons de navigation au changement de
// tab selectionnée.
// Il serait tout à fait possible de le faire à chaque
// click en fonction de le l'index de la tab qui sera
// selectionnée, soit, après les tabControl1.SelectedIndex = ...
//
////////////////////////
//
// '0' est le numero d'index de la 1ere tab
// donc s'il y a 5 tab, l'index de la 5eme
// ser '4'.
//
////////////////////////
private void button_premier_Click(object sender, EventArgs e)
{
// En cliquant sur 'button_premier'
// la 1ere tab sera selectionner
tabControl1.SelectedIndex = 0;
}
private void button_precedent_Click(object sender, EventArgs e)
{
// Si la tab selectionnée n'est pas la premiere
if (tabControl1.SelectedIndex > 0)
{
// La tab selectionnée sera celle dont l'index sera son index - 1
// si son index est 4 la tab a selectionner sera 3 : 4 - 1
tabControl1.SelectedIndex = tabControl1.SelectedIndex - 1;
}
}
private void button_suivant_Click(object sender, EventArgs e)
{
// Il ne peut il y avoir une tab suivante que si son l'index
// de la tab selectionnée est inferieur au nombre de tab.
// S'il y a 5 tab l'index de la 5eme est 4, donc si la 5eme tab
// qui a pour index 4 est selectionée, la prochaine tab (la 5eme)
// aura pour index sera 5 (= 4 + 1)
// or 5 n'est pas inferieur au (ou different du) nombre de tab
// c'est a dire 5, il n'y aura donc pas de tab suivante!
if (tabControl1.SelectedIndex < tabControl1.TabCount)
{
// La tab à selectionner est la prochaine
// On ajoute donc 1 a l'index de la tab selectionnée
// 3eme tab selectionnée la prochaine est la 4eme :
// 4 = 3 + 1.
tabControl1.SelectedIndex = tabControl1.SelectedIndex + 1;
}
}
private void button_dernier_Click(object sender, EventArgs e)
{
// S'il y a 5 tab l'index de la 5eme est 4,
// donc on retir 1 au nombre de tab et on obtient
// l'index de la derniere table.
tabControl1.SelectedIndex = tabControl1.TabCount - 1;
}
// A chaque changement de tab...
private void tabControl1_Selected(object sender, TabControlEventArgs e)
{
// Si la premiere tab est selectionnée...
if (tabControl1.SelectedIndex == 0)
{
// On désactive les boutons premier et précédent
button_premier.Enabled = false;
button_precedent.Enabled = false;
button_suivant.Enabled = true;
button_dernier.Enabled = true;
}
// Si c'est la dernière tab qui est selectionnée...
else if (tabControl1.SelectedIndex == tabControl1.TabCount - 1)
{
// On désactive les boutons suivant et dernier
button_premier.Enabled = true;
button_precedent.Enabled = true;
button_suivant.Enabled = false;
button_dernier.Enabled = false;
}
// Si ni la permière ni la dernière qui est selectionnée...
else
{
// On active tous les boutons
button_premier.Enabled = true;
button_precedent.Enabled = true;
button_suivant.Enabled = true;
button_dernier.Enabled = true;
}
}
////////////////////////
// par floptwo.
////////////////////////
}
}
Conclusion
Dans le ZIP vous trouverez tout les code.
Historique
- 05 juin 2006 04:06:34 :
- Petit oubli!
- 06 juin 2006 14:48:34 :
- Correction des coommentaires
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Forms dans TabControl [ par bloomy ]
Salut!j'ai créé 3 forms indépendants que je voudrais réunir dans une seule fenêtre.Pour cela je voudrais utiliser un TabContr
TabControl, tabpage et raccourci clavier [ par Arthenius ]
Salut a tous,Voila j'ai un tabcontrole avec plusieurs tabpage dedans, et je souhaiterais pouvoir sélectionner un des tabpage en utilisant le clav
TabControl [ par ange_sali ]
Bonjour;comment rendre un tabpage d'un tabcontrol invisible? (pas tout le tabcontrol rien
Cacher une TabPage / onglet [ par Uskia ]
Je developpe une application en C# sous visual studio 2005 et j'utilise le composant tabcontrol / tabpage, c'est-à-dire les boites à onglet.Pour mon a
background image et tabcontrol [ par terranigma ]
Bonjour,J'utilise actuellement un tabControl qui est peuplé de différents contrôles dynamiquement. Chaque tabPage possède la même image (62ko) en back
focus sur les contrôles [ par emmanuel9 ]
Bonjour à tous, J'ai un TabControl avec plusieurs TabPage et dans chacun des tabPage plusieurs Contrôles. Je sais que pour definir qui aura
TabControl, ouvrir une page précise ( TabPage ) [ par DilleN ]
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 cl
Masquer l'en-tête d'un tabpage ? [ par Beluzzo ]
Bonjour, Voici ma question, j'aimerais utiliser un tabcontrol comme si c'était différents panels. En fait il faudrait que je gère 2 panels situés l'u
Comment faire un TabControl sexy [ par misterzinzin ]
Bonjour, j'ai le code suivant pour faire un tabcontrol "sexy"
User control contenant un tabcontrol modifié. [ par terranigma ]
Bonjour, Je suis nouveau en création d'user control et je rencontre quelques difficultés. J'ai d'une part fait un contrôle qui dérive d'un tabControl
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|