Ich hatte das "Problem", an ein CustomControl eine erst zur Laufzeit verfügbare ID aus dem Parent-Control bzw. der Parent-Page übergeben zu müssen. Da ich das Control deklarativ eingebunden habe, musste das bisher noch separat im CodeBeside geschehen:
"Test" FieldName="label_Firma" ForeignFieldName="bei_id" 
runat="server" />
Test.ForeignFieldValue = ID;
Soweit kein Problem, nur als ich das Control dann mehr als 30x auf der Seite platziert hatte, wurde es nervig - schließlich musste auch die Zuweisung der ID dann über 30 mal erfolgen.
Des Rätsels Lösung: DataBinding funktioniert auch mit Membervariablen. Da ID eine Property der verwendeten Basisklasse des "Hosts" war, stand es mir überall zur Verfügung, also sollte auch das funktionieren:
"Test" FieldName="label_Firma" ForeignFieldName="bei_id" 
ForeignFieldValue="<%# ID%>" runat="server" />
Das tut es auch. Wenn man noch ein 
Page.DataBind() 
hinterher schickt. Das kann sogar bereits im Page_Load() erfolgen.