2009-11-30 23 views
0

Donc je passe par un style (dans ce cas, WhistlerBlue.xaml) et j'aimerais pouvoir utiliser TemplateSelectors avec mes données.WPF Themes et TemplateSelectors

Cependant, cela semble une erreur parce que cela ne semble pas fonctionner! Comment puis-je (Mis à part la carte-blanch en commentant le style offensant, le style ListBoxItem) utilise un DataTemplateSelector avec lui?

Répondre

0

Essayez d'ajouter une liaison pour la propriété ListBoxItem.ContentTemplateSelector:

  1. A l'intérieur du XAML thème, trouver le modèle de contrôle de ListBoxItem (elle est définie dans la propriété "modèle" à l'intérieur Teh style ListBoxItem).

  2. Recherchez l'élément ContentPresenter dans le modèle.

  3. Ajouter disparus de liaison:

    <ContentPresenter 
        x:Name="contentPresenter" 
        Content="{TemplateBinding Content}" 
        ContentTemplate="{TemplateBinding ContentTemplate}" 
        ContentTemplateSelector="{TemplateBinding ContentTemplateSelector}" <-- ADD THIS LINE 
        HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" 
        Margin="{TemplateBinding Padding}"/> 
    
+0

Ce ne marche pas beaucoup de sens ... Je n'avez pas ContentPresenters dans mes modèles. Devrais-je? Mes modèles ressemblent à ceci: Indrora

+0

OK l'a compris. J'avais besoin d'un style pour mon ListViewItem avec ses setters appropriés. – Indrora