2010-12-09 3 views
1

Nous avons un écran qui affiche une grille à l'intérieur d'un onglet. Il y a une instance de grille, et elle doit toujours être visible, quel que soit l'onglet sur lequel vous vous trouvez. (Nous repeuplons son contenu lorsque vous changez d'onglet, mais c'est toujours la même instance de grille.) L'UltraTabControl a une "page de contrôles partagés" qui semble parfaite pour cela, et la plupart du temps, cela fonctionne très bien.Affichage du contenu partagé d'Infragistics UltraTabControl même sans aucun onglet

Cependant, lorsque le contrôle de tabulation a pas d'onglet du tout, Infragistics n'affiche pas les contrôles partagés. Nous avons besoin que la grille soit visible même s'il n'y a pas d'onglets en haut du contrôle onglet.

Existe-t-il un moyen de montrer le contenu partagé, même lorsqu'il n'y a pas d'onglet?

Répondre

0

Apparemment, il n'y a aucun moyen de le faire directement. J'ai fini par travailler en re-parenting le contenu quand il n'y a pas d'onglets.

Par exemple, supposons que j'ai un panneau (panel1) qui contient le contrôle onglet (ultraTabControl1), dont la page partagée (sharedPage1) contient normalement une grille (grid1). Je lance code comme chaque fois que je change la liste des onglets:

var anyTabs = ultraTabControl1.Tabs.Count > 0; 
ultraTabControl1.Visible = anyTabs; 
grid1.Parent = anyTabs ? sharedPage1 : panel1; 

inélégant, mais au moins il fonctionne.

0

Une meilleure façon peut être d'utiliser l'UltraTabStribControl. En gros, c'est juste l'en-tête d'un TabControl sans les panneaux de contenu. Avec cela, vous avez juste besoin de placer une bande d'onglets sur le dessus et la grille ci-dessous. Mais si vous avez d'autres contrôles qui dépendent de l'onglet, vous devrez les masquer/les afficher manuellement ou vous en tenir au TabControl complet.