Der Code ist korrekt und das von dir geschilderte Verhalten sollte nicht passieren - bist du ganz sicher, dass du das genau so in deinem Programm machst und es nicht an etwas anderem liegt?
Hinweis: Ich hoffe die Variable ist in deinem richtigen Code zumindest protected und du kapselst den Zugriff nach außen über eine Property
Hat aber keinen Einfluss auf das angesprochene Fehlverhalten.