WPF ComboBox SelectedItem Set a Null en el interruptor TabControl

Tengo un problema simple en mi aplicación WPF que me obliga a golpearme la cabeza contra la mesa. Tengo un TabControl, donde cada TabItem es una Vista generada para un ViewModel usando un DataTemplate similar a este:

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

FooView contiene un cuadro combinado:

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

y FooViewModel contiene una propiedad simple:public Bar SelectedBar { get; set; }. Mi problema es que cuando configuro el valor de mi ComboBox, cambio a otra pestaña, luego vuelvo a cambiar, el ComboBox está vacío nuevamente. Si establezco un punto de interrupción en el setter para mi propiedad, veo que la propiedad está asignada anull cuando cambio a otra pestaña.

Por lo que entiendo, cuando se cambia una pestaña, se elimina de VisualTree, pero ¿por qué está configurando la propiedad de mi ViewModel?null? Esto hace que sea muy difícil para mí mantener un estado persistente y verificarvalue != null No parece ser la solución correcta. ¿Alguien puede arrojar algo así sobre esta situación?

Editar: la pila de llamadas en el punto de interrupción del setter solo muestra [Código externo], no hay pistas allí.

Respuestas a la pregunta(11)

Su respuesta a la pregunta