2013-01-08 11 views
6

La classe consente le propagazioni del contesto di dati dalla raccolta ai suoi membri. Ma è solo per SilverLight.Esiste un equivalente di DependencyObjectCollection <T> per WPF .NET4.0?

Altre informazioni per DepedencyObjectCollection possono essere trovate da questo post.

Se l'equivalente non esiste, quali sono i passaggi necessari necessari per crearne uno?

Osservo il comportamento del desiderio dalla classe RowDefinitionCollection. Ma non riuscivo a capire la sua attuazione.

grazie

+4

Uomo, non posso aspettare .Net 40! – RichardTowers

+0

Stai forse cercando 'System.Collections.ObjectModel.ObservableCollection '? – newb

+1

No. ObservableCollection non passa il contesto dati ai suoi elementi. Affinché l'associazione dei dati funzioni, T deve ereditare da DependencyObject. Non vi è alcun punto di riferimento sulla T per ObservableCollection, quindi non funzionerebbe immediatamente. –

risposta

2

La risposta breve è NO.

Ma non penso più che sia la corretta implementazione comunque. Finisco per utilizzare una raccolta di FrameworkElement e aggiungerli ai LogicalChildren del controllo personalizzato. In questo modo, DataContext viene trasmesso a FrameworkElement in modo naturale e tutto funziona come previsto.

Sembra che la classe RowDefinition sia implementata in .NET 4.0. Tuttavia, la versione Silverlight di RowDefinition deriva direttamente da DependencyObject. Il documento MSDN mostra la documentazione di Silverlight per impostazione predefinita e mi ha indirizzato erroneamente all'approccio più vecchio e errato.

Problemi correlati