2010-05-01 6 views
0

Voici mon code:J'ai un ComboBox qui me donne la douleur dans WPF en utilisant le modèle MVVM

<ComboBox Grid.Column="1" Grid.Row="9" ItemsSource="{Binding Path=PriorityEntries}" SelectedItem="{Binding Path=Priority,Mode=TwoWay}"/> 

Le comboBox est lié correctement avec PriorityEntries, et quand je change la valeur de la comboBox « set "de la propriété liée (priorité) est appelée en le définissant à ce qu'il doit être. Toutefois, lorsque je ferme le contrôle UserControl que cette zone de liste déroulante réside, il appelle à nouveau la propriété set avec une valeur de null et définit ensuite ce que l'élément selectedItem était à null. Pourquoi la comboBox est-elle reliée lorsque je ferme le contrôle usercontrol? J'ai essayé de définir le mode sur OneTime, mais cela ne reflétera aucun changement ...

Répondre

0

Vous pouvez essayer de 'capturer' la valeur de priorité dans une propriété de votre ViewModel avant que le contrôle ne se ferme et utiliser la valeur capturée. Vous pouvez également modifier le paramètre pour Priority afin qu'il ne le permette pas de définir une fois que le contrôle associé à ViewModel a été fermé.