In C# comment puis-je détruire un onglet sur un onglet de contrôle en ciblant son nom? J'ai un onglet nommé "Bonjour!" et j'aimerais le fermer par programme. Il n'y a aucune garantie que ce sera l'onglet sélectionné à ce moment-là.Comment fermer une page on tabcontrol par le nom de la page de l'onglet
Répondre
La classe TabControl
fournit un TabPages
property qui renvoie un TabPageCollection
contenant tous les TabPages
dans le contrôle.
Vous pouvez donc utiliser le Item
property pour récupérer le TabPage
avec le nom spécifié.
Par exemple, si la page d'onglet que vous voulez est nommé "Bonjour", vous pouvez écrire:
var tabPage = myTabControl.TabPages["Hello!"];
Pour retirer la TabPage
du contrôle, utilisez le RemoveByKey
method:
myTabControl.TabPages.RemoveByKey("Hello!");
Bien entendu, pour que cela fonctionne, vous devez vous assurer que vous avez défini les touches de votre TabPage
s pour qu'elles correspondent au texte de la légende qu'elles affichent.
Vous pouvez essayer quelque chose comme ceci: « Bonjour »
for (int i = tabControl1.TabPages.Count - 1; i >= 0; i--) {
if (tabControl1.TabPages[i].Text == "Hello!")
tabControl1.TabPages[i].Dispose();
}
Je suppose que vous vouliez dire le « texte » du TabPage, depuis ne serait pas un nom valide pour un contrôle.
Remarque: ce code se débarrassera de tout TabPage qui dit "Bonjour!"
La disposition d'une page à onglet alors qu'elle est toujours ajoutée à un contrôle de tabulation est-elle une bonne idée? – Blorgbeard
@Blorgbeard Je ne pense pas qu'il y ait de danger. Le retirer ne l'élimine pas, et l'OP a dit qu'il voulait le "détruire". – LarsTech
Retirer puis disposer Je pense que – sambomartin
- 1. Tabcontrol: Comment pouvez-vous supprimer le titre de la page?
- 2. Comment obtenir le nom et le titre de la page Web d'une page Web
- 3. Comment utiliser Watir pour fermer la page "Webpage essayant de fermer cette page"
- 4. Comment fermer et rediriger une page
- 5. WPF VB.net fermer la page
- 6. Comment fermer la page aspx redirigée depuis le gestionnaire
- 7. comment changer le nom du tabcontrol
- 8. Bouton "Fermer" sur la page
- 9. Comment obtenir le nom de la page précédente de la page redirigée
- 10. Comment récupérer une page avec des caractères spéciaux dans le nom de la page
- 11. Comment peut-on supprimer le titre de page lors du chargement de la page via Ajax?
- 12. comment fermer une superposition en cliquant sur la page
- 13. Comment obtenir le nom de la page de l'application facebook?
- 14. Comment obtenir le nom de la page CMS actuelle
- 15. Réécriture Nom de la page
- 16. Comment fermer la page externe de jQuery SimpleModal sur un événement de page contextuelle?
- 17. Comment fermer manuellement l'affichage de la page Ajax dans fancybox?
- 18. Inviter et empêcher l'utilisateur de naviguer/fermer une page
- 19. Comment trouver le nom de la page par défaut affichée par un serveur web?
- 20. Silverlight tabcontrol avec Page externe comme contenu
- 21. Comment obtenir le nom de la page précédente en ZK?
- 22. Empêcher plusieurs instances d'une page dans TabControl
- 23. comment faire la page html par lien Nom
- 24. Comment fermer une fenêtre avec une page apsx?
- 25. Comment puis-je echo nom de l'attribut On-Click ou hover dans la page produit Magento
- 26. Comment définir un nom de page Access Tab par VBA
- 27. Page Actualiser sur le dialogue jquery fermer
- 28. Comment obtenir le nom de la mise en page actuelle?
- 29. comment extraire le nom de la page d'URL complexe
- 30. Ruby on Rails - Page statique en page de démarrage
qui a été rapide, me battre à elle! – sambomartin
Merci Cody! En regardant la réponse de LarsTech, devrais-je la jeter au lieu de l'enlever pour la mémoire? – atwellpub
@atw Je ferais les deux, juste pour être du bon côté. Retirez-le d'abord, puis jetez-le. Mais vous pouvez vous en débarrasser simplement en le disposant ([référence] (http://stackoverflow.com/questions/1757116/remove-tabpage-dispose-or-clear-or-both)). –