WinForms TabControl - Ajouter Un Nouvel Onglet Bouton (+)
Comment puis-je ajouter un +
bouton pour le TabControl
dans une Application Windows Forms. Voici une réponse pour WPF. Mais je le veux en application WinForms?
Vous devez vous connecter pour publier un commentaire.
Je voudrais ajouter un nouvel élément tabpage, puis définissez l'en-tête de "+", définissez son nom à newTabPage et ajouter un événement pour le TabControl est SelectedIndexChanged. Alors que vous venez de vérifier si
et si c'est le cas, vous pouvez créer un nouvel élément tabpage, l'insérer dans le tabControl et le définir comme le SelectedTab comme:
HandleCreated
événement et envoyez unTCM_SETMINTABWIDTH
du contrôle et de spécifier la taille minimale autorisée pour la largeur d'un onglet. Ici, j'ai partagé une répondre, qui permet d'ajuster la largeur d'un onglet.Vous pouvez ajouter un onglet à la fin des onglets de contrôle et de l'ensemble du texte à
+
et puis:Alors vous aurez un contrôle onglet, comme ci-dessous. Pour avoir de plus grands boutons de l'onglet, j'ai appliqué un rembourrage pour le contrôle.
Hanlde Cliquez sur le Dernier Onglet
Vous pouvez gérer
MouseDown
ouMouseClick
de l'événement et de vérifier si le dernier onglet rectangle contient la souris cliqué point, puis insérer une tabulation avant le dernier onglet:Empêcher Sélectine de Dernier Onglet
Pour empêcher la sélection de dernier onglet, vous pouvez gérer
Selecting
cas de contrôle et vérifiez si la sélection de l'onglet est le dernier onglet, d'annuler l'événement:Ajuster la Largeur des Onglets
Pour ajuster la largeur d'un onglet et de laisser le dernier onglet ont une plus petite largeur, vous pouvez hanlde
HandleCreated
événement et envoyez unTCM_SETMINTABWIDTH
du contrôle et de spécifier la taille minimale autorisée pour l'onglet largeur:Note
Vous pouvez simplement encapsuler la logique d'un dérivé
TabContol
et de faire un onglet personnalisé de contrôle qui prend en charge l'ajout d'onglets.Bouton fermer: Aussi, vous pouvez tout simplement prendre le contrôle de propriétaire-dessiner et manipuler la Peinture des onglets pour afficher une
+
icône etX
icône sur onglets. Comme un exemple, vous pouvez voir une mise en œuvre dans ce post: TabControl à Proximité et Bouton Ajouter.De droite à Gauche (RTL) le soutien: Vous pouvez ajouter le support pour RTL lors de l'utilisation de propriétaire-tirage onglet. Ce post: Bouton de fermeture pour TabPages de Droite À Gauche TabControl est une solution.
Créer un onglet avec le tag "+" , et l'utilisation "tabControl1_Selecting" de l'événement, et le code ce:
Quelques améliorations selon @Reza Aghaei
votre formulaire doit regarder ce genre:
form1
formTab
maintenant taper ces codes:
espère que cela aide!