The IDE stops you from doing it because it makes writing code for controls easier if they are all uniquely named. I'm not saying names are bad but really its all about the references to the controls. The IDE calls the variables that hold the references to the controls the same thing as the Name property which is the useful part. Although I, personally, never use the name property again once the variables are set up.

I'm not sure I explained very well, but I tried. Basically the IDE stops you because it makes the IDE's job easier if this rule is enforced and names are not important because they are just properties on the object. BUT the IDE makes the references (variables) the same as the name so it makes them seem important.