2010-07-12 4 views
1

Y at-il un déclencheur que je peux créer pour voir si un Tabcontrol a un seul TabItem. Dans ces cas, j'ai en fait une collection TabItem dans le codebehind sur laquelle je pourrais éventuellement utiliser une méthode count.WPF: déclencher pour vérifier si TabControl a seulement 1 onglet!

Dans le cas d'un seul onglet je ne voulais pas cacher le TabPanel. Puis-je simplement appeler la visibilité = réduire?

Répondre

4

Dans le modèle de contrôle des TabItems je mets:

<ControlTemplate.Triggers> 
     <DataTrigger Binding="{Binding Path=Items.Count, RelativeSource={RelativeSource FindAncestor, AncestorType=TabControl, AncestorLevel=1}}" Value="1"> 
      <Setter Property="Visibility" Value="Collapsed" /> 
     </DataTrigger> 
</ControlTemplate.Triggers> 

et il fonctionne comme un charme.

1

Si vous utilisez une ObservableCollection dans le code précédent, vous pouvez utiliser l'événement CollectionChanged et vérifier la taille de la collection. À propos de la visibilité de TabPanel Je ne sais pas mais vous pouvez l'essayer.

Questions connexes