2010-08-31 2 views
1

J'utilise actuellement MVVMLight pour mon application WP7 et j'ai trouvé que le datacontext d'un EventToCommand est toujours le page datacontext. J'utilise également le contrôle de panorama phone.codeplex.com et ai défini le datacontext pour chaque PanoramaItem sur un ViewModel différent, mais ce contexte de données est ignoré et le contexte de données de page est utilisé à la place.Silverlight/Windows Phone - EventToCommand DataContext Weirdness

Quelqu'un sait pourquoi?

+0

D'autres éléments peuvent se lier à la datacontext de PanoramaItem sans problème (itemsControl.Source). – chief7

+0

Pouvez-vous poster du code XAML et du code, si possible? Comment définissez-vous DataContext? Utilisez-vous un localisateur ViewModel? – indyfromoz

+0

Oui, j'utilise un localisateur ViewModel. Désolé, je n'ai pas le code avec moi maintenant. C'est une configuration standard MVVMLight, une liaison statique des ressources dans App.xaml en tant que ressource à partir de laquelle DataContexts est défini sur d'autres pages. – chief7

Répondre

1

Cela ne devrait pas être le cas. Après avoir travaillé intensivement pendant 2 semaines sur une application WP7 avec MVVM, je peux confirmer que le DataContext doit être correctement défini. Il est possible que

a) le contrôle de code de CodePlex fasse quelque chose de bizarre. Ce serait surprenant mais je ne peux pas l'exclure, n'ayant jamais utilisé ce contrôle. B) votre DataContext a été remplacé quelque part dans votre DataTemplate.

Mélange le fait parfois. Assurez-vous que ce n'est pas le cas.

Si le problème persiste, envoyez-moi un repro (petit extrait du code où le problème est visible) et je vais le vérifier.

Merci, Laurent