Comment mettre en œuvre certains des onglets doivent fermer par certains événements ou un clic de bouton?Tabcontrol select
Répondre
Vous pouvez supprimer un onglet de TabControl comme ceci:
tabControl1.TabPages.Remove(tabControl1.SelectedTab);
Lors de la fermeture de plusieurs onglets vous pouvez supprimer les onglets avec un numéro d'index plus élevé d'abord comme l'index des pages de l'onglet change lorsque vous pop un onglet :
private void button1_Click(object sender, EventArgs e)
{
// Close second and fourth tab
if (tabControl1.TabPages.Count > 3)
{
// Work backwards when removing tabs
tabControl1.TabPages.RemoveAt(3);
tabControl1.TabPages.RemoveAt(1);
}
}
Si vous avez besoin des onglets après les fermer, puis Hide()
ne sera pas utile. Vous devez stocker une référence pour chaque onglet dans la mémoire et ajouter ou les insérer plus tard:
tabControl1.TabPages.Remove(tabPage1);
tabControl1.TabPages.Add(tabPage1);
tabControl1.TabPages.Insert(0, tabPage1);
En utilisant l'exemple ci-dessous, vous pouvez conserver une collection d'onglets que vous avez fermé et les pousser à TabControl plus tard. De préférence, vous allez créer une petite classe qui vous permet de sauvegarder la position et de faire référence aux onglets. Cet exemple utilise un générique List et Control.Tag qui fait la même chose.
private List<TabPage> tabsClosed = new List<TabPage>();
private void button1_Click(object sender, EventArgs e)
{
// Close second and fourth tab
if (tabControl1.TabCount > 3)
{
// Keep a reference to tabs in memory before closing them
tabsClosed.Add(tabControl1.TabPages[1]);
tabsClosed.Add(tabControl1.TabPages[3]);
// Store the tabs position somewhere
tabControl1.TabPages[1].Tag = 1;
tabControl1.TabPages[3].Tag = 3;
// Work backwards when removing tabs
tabControl1.TabPages.RemoveAt(3);
tabControl1.TabPages.RemoveAt(1);
}
}
private void button2_Click(object sender, EventArgs e)
{
foreach (TabPage tab in tabsClosed)
{
//tabControl1.Controls.Add(tab);
tabControl1.TabPages.Insert((int)tab.Tag, tab);
}
tabsClosed.Clear();
}
- 1. C# TabControl TabPage Change
- 2. C#: transparent dans tabControl
- 3. .net tabcontrol tab tailles
- 4. Masquer l'en-tête TabControl
- 5. Arrière-plan transparent TabControl
- 6. Ajax TabControl chargement lentement
- 7. ASP.Net AJAX TabControl
- 8. onglets en bas de TabControl
- 9. TabControl sans bordure wpf (XP)
- 10. TabControl Ajouter est très lent
- 11. Plusieurs instances userControl dans tabControl
- 12. WPF TabControl Liaison de données
- 13. override C# Méthode TabControl add
- 14. WPF TabControl XP Styling Problème
- 15. WPF TabControl avec le bouton 'nouvel onglet'?
- 16. Suggestions pour un C# tabcontrol personnalisé?
- 17. Focaliser les contrôles dans un Tabcontrol
- 18. WPF TabControl avec icônes de débordement
- 19. C# ajouter dynamiquement du texte à tabcontrol
- 20. select tabItem par programme dans WPF
- 21. Méthode select select Méthode ORDER BY
- 22. select statement
- 23. SELECT DISTINCT
- 24. Pourquoi mon TabControl de ma base de données ne ressemble-t-il pas à TabControl non databound?
- 25. MYSQL MyISAM Comment inscrire 2 instruction select + select count
- 26. Utilisez SELECT AVG avec les paramètres "SELECT AVG (@parameter)" SQL!
- 27. Comment joindre une sélection select à une somme select?
- 28. Que fait "select ((select (s), $ | = 1) [0])" faire en Perl?
- 29. Comment puis-je étendre le TabControl Silverlight pour DataBinding?
- 30. Définir la visibilité sur un seul onglet dans tabcontrol (winforms)
Vous voudrez probablement clarifier cette question. – Shog9
Je ne comprends pas non plus la question ... la clarification s'il vous plaît. – ahockley