Perhaps because with dynamically created controls the names are not constrained to resolve completely at compile time? ie the errors won't occur until runtime.
>I commented out (in HTML style) the whole block of controls (sustituted them with UserControl). However, my page that tries to access controls that are commented out still compiles OK.