Private gehört nur der Klasse.
Was nicht als virtual oder dynamic deklariert ist, kann nicht überschrieben (override) werden.
Innerhalb der selben
Unit kann man aber von extern auf private Felder/Methoden zugreifen/aufrufen (solange sie nicht "strict private" sind.
Schau doch einfach mal, welche Message bei einer Änderung im Control rumgeschieckt wird und reagiere darauf.