WPF ComboBox SelectedItem défini sur Null sur le commutateur TabControl

J'ai un problème simple dans mon application WPF qui m'a frapper ma tête sur la table. J'ai un TabControl, où chaque TabItem est une Vue générée pour un ViewModel à l'aide d'un DataTemplate similaire à ceci:

<DataTemplate DataType="{x:Type vm:FooViewModel}">
    <vw:FooView/>
</DataTemplate>

FooView contient une zone de liste déroulante:

<ComboBox ItemsSource="{Binding Path=BarList}" DisplayMemberPath="Name" SelectedItem="{Binding Path=SelectedBar}"/>

et FooViewModel contient une Propriété simple: public Bar SelectedBar { get; set; }. Mon problème est que lorsque j'ai mis la valeur de ma zone de liste déroulante, passer à un autre onglet, puis revenir, la zone de liste déroulante est à nouveau vide. Si j'ai mis un point d'arrêt sur la définition pour mon bien, je vois que le bien est affecté à null lorsque je passe à un autre onglet.

De ce que je comprends, lorsqu'un onglet est activé, il est retiré de la VisualTree - mais pourquoi est-il la définition de mon ViewModel de la propriété null? C'est ce qui rend très difficile pour moi de tenir un état persistant, et la vérification de value != null ne semble pas être la bonne solution. Quelqu'un peut-il de jeter un peu comme sur cette situation?

Edit: La pile d'appel au poseur de point d'arrêt ne montre [Code Externe] - pas de conseils.

source d'informationauteur bsg