20 messaggi dal 30 maggio 2007
Salve a tutti:
dovrei passare ad un DataTemplateSelector il valore di una DependencyProperty di proprietà della window che contiene la listview che a sua volta utilizza il DataTemplateSelector, ma incappo in questo errore:
"A 'Binding' cannot be set on the 'Status' property of type 'EnrichmentBarTemplateSelector'. A 'Binding' can only be set on a DependencyProperty of a DependencyObject." Esiste un modo per passare da xaml il valore di questa dependencyProperty, che viene modificata a runtime, al DataTemplateSelector senza usare il binding?
Grazie in anticipo
Andrea
Modificato da andypat il 15 dicembre 2008 15.50 -
Il problema è che DataTemplateSelector non è un DependencyObject e quindi anche Status non è una DependencyProperty e quindi non puoi usare il Binding.
Il fatto è che anche se si potesse non sarebbe corretto. Il selector viene invocato da una lista che ha bisogno di sapere qual'è il template. Anche se tu lo cambiassi a runtime non otterresti il ricaricamento della lista applicando di nuovo i template.
E' inevitabile quindi secondo me che tu debba scrivere del codice che vada a cambiare la proprietà del selector e invalidi chi fa uso del selector per rifare il tutto.

Ciao

Il mio blog
Homepage
20 messaggi dal 30 maggio 2007
Grazie per la pronta risposta. In effetti sto facendo un pò di casino con i template; comunque per ora ho bypassato il problema modificando direttamente la proprietà Status dell'item nella mia lista di osservabili e riassegnadolo alla lista tramite una new.

Andrea

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.