Конечно возможно. Так и делаете при создании компонента прописываете адрес обработчика события где-то так:
Код:
procedure TMyForm.OnComponentCreate(Sender: TObject);
begin
if TControl(Sender).Name = 'MyComponent1' then ;
if TControl(Sender).Name = 'MyComponent2' then ;
end;
...
myComponent.OnCreate := OnComponentCreate;
...
А вот насчет синхронизации не подскажу.